c#streamwriter在文件创建时添加行
我正在控制台应用程序中成功地将数据写入csv文件(耶!)。到目前为止,Streamwriter对我来说非常优秀c#streamwriter在文件创建时添加行,c#,streamwriter,C#,Streamwriter,我正在控制台应用程序中成功地将数据写入csv文件(耶!)。到目前为止,Streamwriter对我来说非常优秀 using (StreamWriter writer = new StreamWriter(file, true)) { writer.WriteLine(strToSave); } 此代码附加到现有文件,或者,如果该文件不存在,则先创建一个新文件,然后再写入 我想让它做的是,如果文件不存在,创建文件,为csv列写一个标题行,然后像平常一样写数据。我该怎么做 谢谢。您可以首先
using (StreamWriter writer = new StreamWriter(file, true))
{
writer.WriteLine(strToSave);
}
此代码附加到现有文件,或者,如果该文件不存在,则先创建一个新文件,然后再写入
我想让它做的是,如果文件不存在,创建文件,为csv列写一个标题行,然后像平常一样写数据。我该怎么做
谢谢。您可以首先使用
file.exists()
方法检查文件是否存在。如果文件已经存在,则不需要写入标题,如果存在值为false
,则写入标题(假设.csv
的标题位于变量标题中),然后写入所需的文本
bool exists = File.Exists(file);
using (StreamWriter writer = new StreamWriter(file, true))
{
if(!exists)
writer.WriteLine(header);
writer.WriteLine(strToSave);
}
您可以首先使用file.exists()
方法检查文件是否存在。如果文件已经存在,则不需要写入标题,如果存在值为false
,则写入标题(假设.csv
的标题位于变量标题中),然后写入所需的文本
bool exists = File.Exists(file);
using (StreamWriter writer = new StreamWriter(file, true))
{
if(!exists)
writer.WriteLine(header);
writer.WriteLine(strToSave);
}
您可以检查流的长度属性
using(var stream = new FileStream("file.name", FileMode.OpenOrCreate, FileAccess.ReadWrite))
using (var writer = new StreamWriter(stream))
{
if (stream.Length == 0)
{
// Write header here
}
}
您可以检查流的长度属性
using(var stream = new FileStream("file.name", FileMode.OpenOrCreate, FileAccess.ReadWrite))
using (var writer = new StreamWriter(stream))
{
if (stream.Length == 0)
{
// Write header here
}
}
如果您确定没有其他进程会同时干扰该文件,您可以使用If(file.Exists(file))…
选择不同的路径。您可以在打开流之前使用FileInfo classes Exists方法检查它是否存在如果您没有尝试任何操作,您可以做的是;检查文件是否存在。如果没有,请运行您的头文件编写代码,然后像往常一样运行。如果您确定没有其他进程会同时处理该文件,则可以使用If(file.Exists(file))…
采取不同的路径。在打开流之前,您可以使用FileInfo classes exists方法检查流是否存在。如果您没有尝试任何操作,您可以执行以下操作:;检查文件是否存在。如果没有,运行你的头写代码,然后像往常一样。非常整洁的解决方案!谢谢,这是我能从头顶写下的最简单的一个。确实是非常简洁的解决方案!谢谢,这是我能写的最简单的一封信。