我有一個類似在這裏發表的問題存儲數據:閱讀並從文本文件C++
C++: Read from text file and separate into variable
不同的是,原來的職位曾在下列格式file.txt的:
- 名稱int INT INT
- 名稱int INT INT
我的文件格式如下:
FNAME LNAME
INT INT INT
FNAME LNAME
INT INT INT
我想閱讀(第一個和最後一個)名稱並存儲我t分配給一個變量,每個int分配到它自己的變量中(用於將來的計算)。
我試過使用類似於答案的東西,但換行符搞亂了我的變量。
作爲額外的好處,我的文件中有隨機的空白行。
這裏是我到目前爲止的代碼
if (myfile.is_open())
{
while (getline(myfile, line))
{
istringstream iss(line);
string fname;
string lname;
if (line != "")
{
iss >> fname >> lname >> x >> y >> z >> a >> b >> c;
cout << "name: " << fname << endl;
//iss >> x >> y >> z >> a >> b >> c;
cout << "x: " << x << "y: " << y << endl;
}
else cout << "";
}
}
名稱和整數在不同的行中,但您嘗試從同一行中提取它們。 'iss >>'等只能訪問1行。你需要一些方法來記住你在哪一行,並考慮空行。此外,沒有什麼大不了的,但在檢查空白行之前不要設置字符串流,因爲這樣更有效。 –