创建CSV文件时没有指数

时间:2010-07-01 17:10:04

标签: excel csv .net

如何解决将值插入csv文件时发生的指数转换问题。我有一个创建csv文件的进程,然后开始在其中输入行。行中的其中一个字段会插入与此类似的值:

123,45,45,466,6656,23423,2455,234,2454

这些只是我需要保留在csv文件上的一串id,以便将它们导入到另一个程序中,该程序需要在该字段中使用逗号分隔的值。

当然,当我打开excel并查看这个csv时它会给我这样的东西: 123,45,45,466,6656,000,000,000,000

因此最后几个值对导入过程没有任何意义,并且失败了。

我的问题是如何写入csv文件并绕过我的值转换为指数数字以及保留逗号分隔数字值如上所述?

提前致谢 比利

3 个答案:

答案 0 :(得分:4)

在他们周围加上引号

“123”, “45”, “45”, “466”, “6656”, “23423”, “2455”, “234”, “2454”

答案 1 :(得分:2)

为了解决这个问题,我在MS Excel 2007中使用了以下步骤:

  1. 在Excel中打开空白工作簿。
  2. 选择数据,获取外部数据,导入数据。 (Excel 2007是数据,获取外部数据,文本数据)
  3. 浏览到.csv文件并选择“导入”。
  4. 应出现导入向导。
  5. Page 1选择“分隔”
  6. 选择要开始导入的行。
  7. 点击“下一步”
  8. 在分隔符中,选择“逗号”和/或您正在使用的其他分隔符。 注意:窗口的下半部分将预览导入数据的方式。
  9. 点击“下一步”
  10. 在下面的窗口中突出显示数据的每一列。对于每列,您可以使用向导框左上角的单选按钮指定“常规”,“文本”,“数据”或“不导入列”。我使用了“文本”选项。这是一个可选步骤。
  11. 单击“完成”。

答案 2 :(得分:0)

在使用数据时将值放在单引号中

例如:

String[] abc = {"0123455677888", "154758768969", "abcsdhfsdj", ""abcsdhfsdj3725423", "62343664268abcsdhfsdj"};

CSVWriter csvWriter = new CSVWriter(String fileName);

//csvWriter.writeNext(String[] stringArray)

csvWriter.writeNext(" \' "+abc[0]+" \' ", " \' "+abc[1]+" \' ", abc[2], abc[3], abc[4]);

试试这个 它将完美地存储数据