csv文件打开乱码解决
文章目录
前言
公司需要我导出csv的格式进行整理,如下图所示
我导出后用Excel打开却变成了乱码
解决方法
csv格式的文件可以使用
nodepad++
打开,发现数据是正常的,那就是编码格式的问题了
默认情况下,Windows平台上的 UTF-8 编码是带有 BOM(Byte Order Mark)的,所以使用 Windows 上的Excel 软件打开纯 UTF-8 编码的文档时,会因为没有 BOM 而不识别文件内容,造成乱码。所以需要把格式转成
UTF-8 BOM编码
,使用notepad++
转换格式即可
UTF-8 不需要 BOM,尽管 Unicode 标准允许在 UTF-8 中使用 BOM。所以不含 BOM 的 UTF-8 才是标准形式,在 UTF-8 文件中放置 BOM 主要是微软的习惯(顺便提一下:把带有 BOM 的小端序 UTF-16 称作「Unicode」而又不详细说明,这也是微软的习惯)。
BOM(byte order mark)是为 UTF-16 和 UTF-32 准备的,用于标记字节序(byte order)。微软在 UTF-8 中使用 BOM 是因为这样可以把 UTF-8 和 ASCII 等编码明确区分开,但这样的文件在 Windows 之外的操作系统里会带来问题。