我有一个CSV文件,其中包含格式为“1 A”,“2 A”,“3 A”等的标题。当我导入文件时,它们会转换为凌晨1:00,凌晨2:00 ,凌晨3点等等。
我该怎么做才能防止这种情况发生?我是否必须以某种方式更改文本的格式,以便Excel将其保留原样?如果是这样,我需要添加什么?
答案 0 :(得分:0)
我同意David的观点,将双重引号中的值括在一起应该使Excel将列值视为文本,但使用列标题 - 谁知道。
一种可能的解决方案: 在导入向导期间,您可能尝试更改“在行开始导入”= 2的值,然后确保“列数据格式”为文本。然后,您可以手动输入列标题名称。
来自:http://office.microsoft.com/en-us/excel-help/text-import-wizard-HP010102244.aspx
答案 1 :(得分:0)
我也面临同样的问题,我通过遵循基础
摆脱了首先转换为UTF - 8
如果用户正在使用Windows添加BOM(字节顺序标记)
如果用户使用MAC或其他操作系统(删除BOM)
var is_Mac = navigator.platform.toUpperCase().indexOf('MAC') >= 0;
if (is_Mac) {
var csvData = csv;
}
else {
var BOM = "\uFEFF";
var csvData = BOM + csv;
}
var csvFile = new Blob([csvData], { type: "text/csv;charset=utf-8" });
var urlHref = URL.createObjectURL(csvFile);
希望这能解决您的问题