0

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

问题是我们的供应商需要将所有字段,而不仅仅是其中包含逗号的字段,封装在引号中。Aspose Cells 似乎对带有逗号的字段进行了某种形式的自动封装,但不是所有字段。

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

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

所以我的问题是,他们是否有其他处理这个问题的方法比像现在这样进行两次传球更好?

更新:Aspose 在他们的论坛上回复了我的帖子,他们说他们将向 TxtSaveOptions 类添加一个属性以支持此功能。如果/当发生这种情况时,我会再次更新。

4

1 回答 1

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 标准。

于 2012-07-09T20:47:45.987 回答