●STL スレッド●
■ このスレッドは過去ログ倉庫に格納されています
0321長いかも
NGNGアスキーファイルから1行づつデータを取り出して、それをstd::stringに放り込みたいと
思ってます。
で、まず以下のようにしました。
std::ifstream fsHoge("hoge.txt");
while( !fsHoge.eof())
{
string strBuf;
fsHoge >> strBuf;
cout << strBuf.c_str() << std::endl;
}
ですが、これはhoge.txtの中身が
aaa bbb ccc
ddd eee fff 111 222 333
のような場合には意図したようになりません。
char szBuf[1024];
fsHoge.getline(szBuf, 1024);
cout << szBuf << std::endl;
とgetlineを使えば実現できるのですが、1行の長さが1024を超える可能性があるので
不安です。サイズを大きめにとっておけばいいのですが、せっかくstringを使ってるのに
ここでchar[]を使いたくないです。
希望としては、
fsHoge >> strBuf;
としたときに、スペースも文字列として認識する方法とかがあればいいなと思ってます。
何かいい方法ご存じないでしょうか?よろしくお願いします。
■ このスレッドは過去ログ倉庫に格納されています