C# 将数据插入已有数据的CSV文件的第一行
时间: 2024-12-02 14:22:44 浏览: 15
在C#中,如果你想将数据插入已有的CSV文件,并将其添加到第一行(通常这是标题行),你可以使用`StreamWriter`和`string.Split`方法来处理。假设你已经有了一个包含字段的数据字典或数组,可以按照以下步骤操作:
```csharp
using System;
using System.IO;
public void InsertIntoCSV(string filePath, string[] data)
{
// 检查文件是否存在,如果不存在则创建
if (!File.Exists(filePath))
{
using (var writer = new StreamWriter(filePath))
{
// 写入原始标题行
writer.WriteLine(string.Join(",", data));
}
}
else
{
// 如果文件存在,追加模式打开并写入新行
using (var writer = File.AppendText(filePath))
{
// 首先读取当前的文件内容
var lines = File.ReadAllLines(filePath);
// 获取最后一行的索引(跳过标题行)
int lastLineIndex = lines.Length - 1;
// 写入新行,保留原有分隔符
writer.WriteLine($"{string.Join(",", data)}{Environment.NewLine}");
// 如果需要,还可以把新行放在标题行下面,这里仅示例了追加在最后
// writer.WriteLine($"{string.Join(",", data)}", lastLineIndex + 1); // 可选操作
}
}
}
// 使用示例
string[] headerData = {"Field1", "Field2", "Field3"};
InsertIntoCSV("example.csv", headerData);
```
阅读全文