不能使用streamwriter的'.writeline'方法将字符串写入文件

时间:2013-05-05 13:40:57

标签: c# file

我想使用流编写器类在文本文件中编写一个简单的字符串,但它似乎不起作用(并且没有错误)。这是我的代码:

StreamWriter test = new StreamWriter("mytext.txt", true);

// used the below code too to create the file. It didn't work either!
//StreamWriter test = File.CreateText("mytext.txt"); 
test.WriteLine("hello");

当我运行此代码时,文本文件中不会添加任何内容!我哪里出错?(ps:我也使用了完整路径文件名!但它没有用!)

3 个答案:

答案 0 :(得分:3)

using(StreamWriter test = new StreamWriter("mytext.txt", true)){
        test.WriteLine("hello");
}

问题是你的流的缓冲区没有刷新...你可以调用flush()或确保它被使用块正确处理...

答案 1 :(得分:1)

您必须关闭连接才能写入文件 最佳做法是使用using

创建文件后更新文件没有问题。但你必须始终照顾流。

        using (StreamWriter test = new StreamWriter("mytext.txt", true))
        {
            test.WriteLine("File created");
        }

        //Do Stuff...

        using (StreamWriter test = new StreamWriter("mytext.txt", true))
        {
            test.WriteLine("hello");
        }

答案 2 :(得分:0)

你是否在另一个程序中打开了文件,例如notepad ++?