我正在用一些程序拧一个csv文件。
如何务实地将excel数字格式设置为csv文件的文本?
当我在excel文件中打开它时遇到问题,如果某个列的值超过了256,它会自动截断它。
我知道,默认情况下,excel的数字格式为012,,如果我可以将它设置为'TEXT'
那么它不会截断任何部分。
那么有什么编程方式可以将GENERAL
设置为TEXT
。
我正在用一些程序拧一个csv文件。
如何务实地将excel数字格式设置为csv文件的文本?
当我在excel文件中打开它时遇到问题,如果某个列的值超过了256,它会自动截断它。
我知道,默认情况下,excel的数字格式为012,,如果我可以将它设置为'TEXT'
那么它不会截断任何部分。
那么有什么编程方式可以将GENERAL
设置为TEXT
。
csv是纯文本格式。您不能将元数据(如列处理)嵌入到该文件格式中。
如果你不想做excel截断列,那么你就需要你的时候写出来的csv文件到自己截断它:
var csvFileBuffer = new StringBuilder();
var columns = new List<string>();
csvFileBuffer.AppendLine(
string.Join(
",",
columns.Select(s =>
//truncate column header (change logic as appropriate)
s.Substring(0, 255))));
这就是说,有可能是一种选择,你可以设置为excel,它将更改csv文件的默认列类型。但是,这将是一个问题SuperUser.com
另一种选择是写出本机excel文件格式,如xlsx
。您可以使用多种工具,例如Open Xml Sdk。
不,默认情况下,excel截断255之前的文本,我不希望它截断。我想要所有的数据。 – NoviceToDotNetWithAngular 2014-09-24 12:05:34
您无法通过向'.csv'文件中添加魔术字符串来实现该功能 – 2014-09-24 12:11:54
我认为你有一个不同的问题,Excel可以肯定读取CSV文件的值超过256。请向我们展示您的CSV文件的几行内容。 – 2014-09-24 11:30:34
请参阅http://stackoverflow.com/questions/137359/excel-csv-number-cell-format – 2014-09-24 11:30:36
不知道这是如何与C#相关的。 – 2014-09-24 11:31:41