文字列変数に大量のコンテンツがあり、ストリーム ライターを使用してそのコンテンツをテキスト ファイルに書き込みたいと考えています。しかし、ストリーム ライターはテキストを切り捨てており、コンテンツ全体をファイルに書き込んでいません。なんで?
using (StreamWriter sw = new StreamWriter(completeFilePath))
{
sw.Write(txt);
}
書き込み後、Flushメソッドを使用してバッファをクリアします。
sw.Write(Html);
sw.Flush();
txt
HTMLを含む文字列変数であると仮定して、のsw.Flush()
後に呼び出してみてくださいsw.Write()
。これにより、ストリームライターは残りの文字列をファイルに書き込むように強制されます。それでもファイルが切り捨てられる場合は、txt
文字列に意図したとおりに完全な出力が含まれていることを確認してください。
サイズが大きすぎる場合は、
using (StreamWriter sw = new StreamWriter(completeFilePath))
{
sw.Write(txt);
//just to make sure the stream writer flushes the command
sw.Flush();
}
サイズがそれほど大きくない場合は、 File.WriteAllText メソッドを使用することをお勧めします
//no need to Open or Close anything
File.WriteAllText(Path, txt);