簡體   English   中英

用“>>”從文件中讀取

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM