CSV 转 Excel

Excel 自己也能打开 CSV,只是打得不好。它按系统区域设置猜分隔符,所以在很多地方,用逗号分隔的文件会全挤进一列。没有 BOM 的文件按本地编码读,中文和西里尔字母就变成乱码。长数字则被悄悄改写:货号丢掉前导零,十六位卡号变成科学计数。这里的读取是老实的,而且结果在点击之前就能看到。

文件在你的浏览器里读取,工作簿也在本地生成,什么都不会上传。编码同样会被识别:用 Windows-1251 保存的 CSV 不必变成乱码。

相关工具: CSV 转 JSON · Excel 转 PDF · PDF 转 Excel · JSON 格式化与校验

使用方法

  1. 选择 CSV 文件,或把表格粘贴到输入框里。
  2. 看一眼预览:如果列不对,就换一个分隔符。
  3. 点击按钮,下载 XLSX。

实用说明

普通 CSV 在哪里出问题

有三件事会毁掉它,而且在打开之前都看不出来。分隔符:Excel 取自系统设置,而不是文件本身。编码:没有 BOM 时它假定本地编码,UTF-8 的导出就成了乱码。还有取值:凡是像数字的都会变成数字,于是「007」变成 7,长编码变成 1.23E+15。这里前两件会被识别,第三件按文本写入。

行会被补成矩形

导出时常常不写末尾的空单元格,于是行长参差:表头九列,有些行只有七列。表格需要的是矩形,所以短行会补上空单元格——否则针对最后一列的公式,会在不同的行里读到不同的字段。

常见问题

我的文件会上传吗?

不会。文件在你的浏览器里读取,工作簿也在那里生成。

列不对怎么办?

说明分隔符猜错了——在列表里手动选一个。预览会立即刷新。

前导零会保留吗?

会。值以文本写入单元格,所以「007」还是「007」,长编码也不会变成科学计数法。

老系统导出的乱码呢?

编码会被识别:用 Windows-1251 保存的文件按其本来的编码读取,而不是变成乱码。

相关工具