3

再帰的にファイルに二分探索木を書く方法がわかりません。Treeクラスで、書き込み用のファイルを使用してBufferWriterを開きます。次に、BufferWriterをNodeクラスに送信して、ツリーを順番にトラバースし、ファイルに書き込みます。しかし、それは機能しません。

public void write(String filePath)
{
  if(root != null) {
    try {
      BufferedWriter out = new BufferedWriter(new FileWriter(filePath));
      root.write(out);
    } catch (IOException e) {
    }
  }
}

public void write(BufferedWriter out)
{
    if (this.getLeft() != null) this.getLeft().write(out);
    out.write(this.data());
    if (this.getRight() != null) this.getRight().write(out);
}
4

1 に答える 1

4

それほど悪くはありません!close()それはあなたが終わったときにあなたがちょうどあなたに欠けているのBufferedWriterでしょうか?がない場合、ファイルは正しく書き込まれない可能性がありますclose

于 2010-04-22T19:59:25.257 に答える