c# - LinqtoCsv 写入 - 创建新的或追加

标签 c# .net linq csv io

我正在使用 LinqToCSV 将列表写入 csv 文件,如下所示:

var outputFile = ConfigurationManager.AppSettings["OutputFile"];
var context = new CsvContext();            
context.Write(cardholders, outputFile, outputDescription);

但是,无论何时运行,它都会覆盖现有的输出文件。我如何让它创建一个新文件(如果它不存在)或追加(如果它存在)

最佳答案

不是传递输出文件路径,而是传递 TextWriter 的重载如果一个文件不存在,它将创建一个新文件并将内容附加到一个存在的文件中:

using (TextWriter writer = new StreamWriter(ConfigurationManager.AppSettings["OutputFile"], true)) {
    var context = new CsvContext();
    context.Write(cardholders, writer, outputDescription);
} 

关于c# - LinqtoCsv 写入 - 创建新的或追加,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16411779/

相关文章:

asp.net - gridview 高亮显示当前行

c# - 如何通知用户他的 Windows Phone 操作系统不支持该应用程序

c# - CaSTLe.Windsor 使用 Dapper 实例化错误版本的 SqlConnection

c# - 在 ListView 控件中访问 TextBox 控件

c# - 父非通用接口(interface)方法的通用接口(interface)隐藏

.net - 序列化对象时,在.Net中设置StandAlone = Yes

.net - Linq - 是否有我缺少的 IEnumerable.ForEach<T> 扩展方法?

c# - NHibernate LINQ 查询中的关键回退

c# - Entity Framework 存储库模式继承

c# - 在 WinForm 中验证数据