テキスト ファイルを読み取る検索バイナリ ツリーにデータを挿入する必要があります。データ間にスペースを使用すると機能しますが、必要に応じてコンマを使用すると機能しません。たとえば、テキスト ファイルを次のようにします。
New-York,c3,Luke
London,c5,Nathan
Toronto,c1,Jacob
...
私のテキストファイルは現在、次のようになっています。
New-York c3 Luke
London c5 Nathan
Toronto c1 Jacob
...
また、自分のプログラムで、スペースが次のデータを参照する必要があることを意味するとは考えないようにしたいと思います。コンマのみを使用します。
これは私のコードがどのように見えるかです:
void fillTree( BinarySearchTree *b)
{
ifstream file;
file.open("data.txt");
string city;
string tag;
string name;
Person p;
if(!file) {
cout<<"Error. " << endl;
}
while(file >> city >> tag >> name)
{
p.setCity(city);
p.setTag(tag);
p.setName(name);
cout << p.getCity() << " " << p.getTag() << " " << p.getName() << endl;
(*b).insert(p);
}
file.close();
}
スペースの代わりにコンマを使用できるようにするには、コードで何を変更する必要がありますか? スペースの代わりにコンマを使用したテキスト ファイルの方が見栄えが良いと思います。このコード ブロック内の何かを編集する必要があると確信していますが、それが別の場所にある可能性がある場合はお知らせください。