C++ ifstream的獲得線變函數getline輸出字符字符串ifstream的獲得線改變輸出字符字符串
我有一個文本文件..所以我讀了它,我這樣做
char data[50];
readFile.open(filename.c_str());
while(readFile.good())
{
readFile.getline(data,50,',');
cout << data << endl;
}
我的問題是不是由變量名的數據創建大小爲50一個char,我可以得到函數getline的字符串,而不是像
string myData;
readFile.getline(myData,',');
我的文本文件是這樣
Line2D中,[3,2] Line3D,[7,2,3]
我試圖和編譯器說..
沒有匹配函數函數getline(的std :: string &,炭)
所以有可能仍然按分隔符分隔,將值賦給字符串而不是char。
更新:
使用
while (std::getline(readFile, line))
{
std::cout << line << std::endl;
}
IT逐行讀取,但我想打破字符串分成幾個分隔符,本來如果使用字符我將指定分隔符爲這是
第三元素readFile.getline(data,50,',');
如果我用分隔符逗號打破/爆炸,上面的那個,我該如何處理字符串。在由線
請參閱http://en.cppreference.com/w/cpp/string/basic_string/getline –
你試過了嗎? – billz
@billz是它說沒有提及getline函數(std :: string&,char) – user1777711