C# streamWriter重写文件或附加到文件
我在用这个C# streamWriter重写文件或附加到文件,c#,.net,visual-studio,visual-studio-2010,C#,.net,Visual Studio,Visual Studio 2010,我在用这个 for($number=0; $number < 5; $number++){ StreamWriter x = new StreamWriter("C:\\test.txt"); x.WriteLine(number); x.Close(); } 使用C#可以从使用文件流开始,然后将其传递给StreamWriter FileStream fsOverwrite = new FileStream("C:\\te
for($number=0; $number < 5; $number++){
StreamWriter x = new StreamWriter("C:\\test.txt");
x.WriteLine(number);
x.Close();
}
使用C#可以从使用文件流开始,然后将其传递给StreamWriter
FileStream fsOverwrite = new FileStream("C:\\test.txt", FileMode.Create);
StreamWriter swOverwrite = new StreamWriter(fsOverwrite);
或
StreamWriter的默认行为是创建一个新文件,或者覆盖它(如果存在)。要附加到文件,需要使用接受布尔值的重载并将其设置为true。在示例代码中,您将重写test.txt 5次
using(var sw = new StreamWriter(@"c:\test.txt", true))
{
for(int x = 0; x < 5; x++)
{
sw.WriteLine(x);
}
}
使用(var sw=newstreamwriter(@“c:\test.txt”,true))
{
对于(int x=0;x<5;x++)
{
sw.WriteLine(x);
}
}
尝试文件模式枚举器:
FileStream fappend = File.Open("C:\\test.txt", FileMode.Append); // will append to end of file
FileStream fcreate = File.Open("C:\\test.txt", FileMode.Create); // will create the file or overwrite it if it already exists
那么代码的结果是什么呢 我希望该文件只包含数字4,因为默认行为是创建/覆盖,但您是说它不是覆盖
您应该能够通过执行您正在执行的操作使其覆盖文件,并且可以通过使用FileMode.append创建FileStream来进行追加。您可以将第二个参数传递给
StreamWriter
以启用
或禁用
追加到文件:
在C#Net中
:
using System.IO;
// This will enable appending to file.
StreamWriter stream = new StreamWriter("YourFilePath", true);
// This is default mode, not append to file and create a new file.
StreamWriter stream = new StreamWriter("YourFilePath", false);
// or
StreamWriter stream = new StreamWriter("YourFilePath");
在C++.Net(C++/CLI)
中:
然后您可以从
FileStream
而不是直接从文件名本身创建StreamWriter
:StreamWriter x=newstreamwriter(fcreate)代码>当我使用StreamWriter stream=newstreamwriter(“YourFilePath”)代码>在C#中,默认情况下会追加…或StreamWriter swAppend=newstreamwriter(new FileStream(“C:\\test.txt”,FileMode.Append))对于一行程序,只需调用writer.Close()
以在写入后刷新它
FileStream fappend = File.Open("C:\\test.txt", FileMode.Append); // will append to end of file
FileStream fcreate = File.Open("C:\\test.txt", FileMode.Create); // will create the file or overwrite it if it already exists
using System.IO;
// This will enable appending to file.
StreamWriter stream = new StreamWriter("YourFilePath", true);
// This is default mode, not append to file and create a new file.
StreamWriter stream = new StreamWriter("YourFilePath", false);
// or
StreamWriter stream = new StreamWriter("YourFilePath");
using namespace System::IO;
// This will enable appending to file.
StreamWriter^ stream = gcnew StreamWriter("YourFilePath", true);
// This is default mode, not append to file and create a new file.
StreamWriter^ stream = gcnew StreamWriter("YourFilePath", false);
// or
StreamWriter^ stream = gcnew StreamWriter("YourFilePath");