StreamWriter在写入文本文件时截断文本

时间:2013-03-22 07:29:29

标签: c# asp.net

我在字符串变量中有一个巨大的HTML内容,我想使用流编写器将该内容写入文本文件,但是流编写器正在截断文本。它并不是要记录整个内容。我使用以下代码: -

using (StreamWriter sw = new StreamWriter(completeFilePath))
{
    sw.Write(Html);
}

其中Html是字符串类型变量。请帮忙。

4 个答案:

答案 0 :(得分:6)

写入后,使用Flush方法清除缓冲区。

sw.Write(Html);
sw.Flush();

答案 1 :(得分:0)

假设Html是包含HTML的字符串变量,请尝试在sw.Write()之后调用sw.Flush()。这应该强制流编写器将其余的字符串写入文件。如果文件仍被截断,请确保Html包含完整的HTML。

答案 2 :(得分:0)

为什么不使用

File.WriteAllText(completeFilePath, Html);

MSDN Documentation for File.WriteAllText

答案 3 :(得分:0)

如果尺寸太大,

    using (StreamWriter sw = new StreamWriter(completeFilePath))
{
    sw.Write(Html);
    //just to make sure the stream writer flushes the command
    sw.Flush();
}

如果大小不是那么大,我建议使用File.WriteAllText方法

//no need to Open or Close anything
File.WriteAllText(Path, Html);