C++でwifstreamを使ってユニコードテキストファイルから読み込みたいのですが、
getline()を使うと、改行のところでうまく読み込めないようです。

wifstream infile("./in.txt");
wofstream outfile("./out.txt");

wchar_t buff[256];
while (infile.getline(buff, 128)) {
outfile << buff << endl;
}

これだと元のファイルが出力されません。どうすればいいでしょうか。