我知道解析類似這樣的問題在這裏有很多問題,但是在搜索了一段時間之後,我找不到一個答案幫助了我,所以希望我沒有問過之前已經回答了一百萬次的問題。如何在C++中將文本文件解析爲結構的不同元素?
我有一個文本文件,它看起來像這樣:
1 14 100
3 34 200
2 78 120
第一個數字是一個ID號,第二個是一個時代,第三個數字是重量。 (這些是任意的描述)我也有一個結構,看起來像這樣:
struct myData{
int ID;
int age;
int weight;
};
創建myData的結構數組後,我該如何通過文字迭代,最終使我結束了每一行的每個元素文本文件在數組的一個索引中?例如,填充陣列與所述文本文件中的元素之後,我應該能夠說
cout << myData[0].ID << ", " << myData[0].age << ", " << myData[0].weight << "\n";
,它應該打印出「1,14,100」和它應該打印的「3,78, 120「,如果索引在上面的代碼行中是2的話。我嘗試尋找其他人使用getLine()或get()等的例子,但我似乎無法得到它的竅門。我希望我收集了關於我的問題的足夠信息,以便本網站上的嚮導可以輕鬆回答。提前致謝!
在我看來,這是家庭作業,所以我更誘惑說:「你還有什麼嘗試,你卡在哪裏?」 – ereOn
閱讀關於[序列化/反序列化]的概念(http://en.wikipedia.org/wiki/Serialization)。之後,粘貼你正在使用的代碼;) –
查找['std :: ifstream'](http://en.cppreference.com/w/cpp/io/basic_ifstream),[輸入操作符>> '](http://en.cppreference.com/w/cpp/io/basic_istream/operator_gtgt)和['std :: vector'](http://en.cppreference.com/w/cpp/container/vector )。當然還有'while'和'for'循環。 –