在导出时禁用自动封装

时间:2012-06-12 17:06:26

标签: c# csv aspose aspose-cells

我最近在工作中继承了一个由我们不太熟练的实习生编写的项目。它在理论上相当简单;它只需要将一些数据从服务器导出到供应商的CSV文件。

问题是我们的供应商需要包含所有字段,而不仅仅是带有逗号的字段,用引号括起来。 Aspose Cells似乎在带逗号的字段上有某种形式的自动封装,但不是所有字段。

原始程序员制作了自己的方法,在导出之前将引号应用于所有字段,但文件最终会在所有字段周围使用三引号。为了解决这个问题,他们编写了另一个重新打开文件的函数,并将所有三重引号替换为单个。

我知道文本文件有分隔符选项,但我找不到任何关于更改Aspose封装的内容。

所以我的问题是,他们是否有其他方法可以处理这种情况,而不是像目前那样进行两次传递?

更新:Aspose在他们的论坛上回复了我的帖子,他们说他们将在TxtSaveOptions类中添加一个属性来支持此功能。如果/当具体细节发生时,我会再次更新。

1 个答案:

答案 0 :(得分:1)

在Aspose.Cells for .NET v7.2.2中,他们向TxtSaveOptions添加了一个名为AlwaysQuoted的新属性。

以下是保存期间如何使用此属性的示例:

var options = new TxtSaveOptions(SaveFormat.CSV) {AlwaysQuoted = true};
workBook.Save(@"C:\Export Location\"), options);

将属性设置为true将封装所有字段,而不管内容如何。默认设置是像Excel那样模仿CSV标准。