0
字符我有.txt
文件,像這裏面的文字分隔(這只是一個片段):閱讀從字符串多個數據,通過使用sstream
...
[332, 605]-[332, 592], srednica: 13
[324, 593]-[332, 605], srednica: 14.4222
[323, 594]-[332, 605], srednica: 14.2127
[323, 594]-[331, 606], srednica: 14.4222
[324, 593]-[324, 607], srednica: 14
[323, 594]-[323, 607], srednica: 13
[319, 596]-[319, 607], srednica: 11
[320, 595]-[320, 607], srednica: 12
...
我需要什麼,以從獲得第一個4號每行並將它們存儲爲整數。
我已經嘗試了水木清華這樣的:
ifstream file("punkty_srednice.txt");
string line;
int ax, ay, bx, by;
while(getline(file, line)) {
stringstream s(line);
string tmp;
s >> tmp >> ax >> tmp >> ay >> tmp >> bx >> tmp >> by >> tmp;
cout << ax << " " << ay << " " << bx << " " << by << endl;
}
輸出(只是其中的一部分):
...
506 506 -858993460 -858993460
503 503 -858993460 -858993460
495 503 -858993460 -858993460
497 503 -858993460 -858993460
500 497 -858993460 -858993460
492 503 -858993460 -858993460
...
如u一看到有喜歡的-858993460
我一些陌生號碼做了其他嘗試,刪除tmp
,並像這樣直行:
s >> ax >> ay >> bx >> by;
但隨後輸出只包含垃圾號碼,如-858993460
我該如何處理呢?
您是完全地正確!現在我意識到爲什麼即時獲得2個好價值和2個垃圾。我無法找到std :: transform的好例子,所以我逐步替換了'''''''''',''' – ilovkatie
@ user3804906請按照我的答案中的鏈接。 :) –