私は奇妙な問題を抱えている、 私はgetlineの通報及び「奇妙な文字」
wifstream a("a.txt");
wstring line;
while (a.good()) //!a.eof() not helping
{
getline (a,line);
//...
wcout<<line<<endl;
}
を使用して、それがこの http://www.speedyshare.com/files/29833132/a.txt リンクについて(申し訳ありませんようにtxtファイルのためにうまく動作しますが、それだけで80ありますそれでは、改行のic/pが失われてしまったら のようになりますが、ロードを停止している行には例えば水(http://en.wikipedia.org/wiki/UTF-16/UCS-2#Examplesから)を追加します。私は間違った印象を受けていましたが、wstringを1つの入力として受け取り、他の人がtxtの入力を噛むことができるようなgetlineがありました... ファンキーな文字が含まれていてもファイルのすべての行を読み取る方法はありますか?
「getline」を試してください。 –
あなたのユーザ名としか一致しない何らかの理由で、wifstreamのデフォルトは8ビット文字になります。他のエンコーディングを認識するようにstd :: codecvtを使用する必要があります。 –
@ kerrek \t getline(a、line); は同じ(g ++ 4.6、linux)に失敗します。それは引数からテンプレートのパラメータを取得する必要がありますか? –
NoSenseEtAl