[英]Reading from file with “>>”
我有以下人員檔案:
Name 0744112233 ASD
和下面的代碼
const string InFilePersonRepository::PFILE = "persons";
void InFilePersonRepository::load() {
string delim = " ";
string name, phone, address;
ifstream fin(PFILE.c_str());
while (fin.good()){
fin>>name>>delim>>phone>>delim>>address;
Person p(name,phone,address);
persons.push_back(p);
}
}
讀完后,姓名,電話,地址的值為:name = Name,phone = ASD,address =“”,
如果文件有多行,同樣的問題,則跳過文件中的第二個字段。 為什么會這樣?
謝謝
>>
跳過空格,所以不需要delim
。 fin >> name >> phone >> address
應該做。
嘗試類似的東西
void InFilePersonRepository::load() {
string name, phone, address;
ifstream fin(PFILE.c_str());
while (fin.good()){
fin>>name>>phone>>address;
Person p(name,phone,address);
persons.push_back(p);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.