c#streamwriter在文件创建时添加行

时间:2013-03-21 09:45:06

标签: c# streamwriter

我在Console App中成功地将数据写入csv文件(yay!)。到目前为止,Streamwriter对我来说非常好。

using (StreamWriter writer = new StreamWriter(file, true))
{
    writer.WriteLine(strToSave);
}

此代码附加到现有文件,如果不存在,则先创建新文件然后写入。

我想要它做的是,如果文件不存在,创建文件,为csv列写一个标题行,然后正常写入数据。我怎么能这样做?

感谢。

2 个答案:

答案 0 :(得分:5)

您可以先使用File.Exists()方法检查文件存在的天气。如果文件已存在,则无需编写标头,如果存在值为false,则编写标头(假设.csv的标头位于变量{{1}中})然后写下你想要的文字。

header

答案 1 :(得分:0)

您可以检查流的长度属性

using(var stream = new FileStream("file.name", FileMode.OpenOrCreate, FileAccess.ReadWrite))
using (var writer = new StreamWriter(stream))
{
    if (stream.Length == 0)
    {
        // Write header here
    }
}