You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

jQuery Datatable导出CSV日文乱码但Excel导出正常的修复方案问询

CSV导出日文字符乱码修复方案

乱码原因

CSV格式默认导出的文件不带UTF-8 BOM头,Windows系统下的Excel软件打开CSV文件时会默认使用系统本地编码解析文件,与文件实际的UTF-8编码不匹配,就会出现日文等非ASCII字符乱码的问题。Excel格式导出内置了适配Office的编码规则,所以没有乱码问题。

修复方法

修改CSV导出按钮的配置,开启BOM头、明确指定UTF-8编码即可,修改后的完整配置如下:

buttons: [
    {
        extend: 'excel',
        text: 'Export to Excel',
        className: 'btn btn-default',
        exportOptions: {
            columns: ':not(.notexport)'
        }
    },
    {
        extend: 'csv',
        text: 'Export to CSV',
        className: 'btn btn-default',
        exportOptions: {
            columns: ':not(.notexport)'
        },
        // 新增以下配置解决乱码问题
        bom: true,
        charset: 'utf-8'
    }
],

兼容低版本组件的备用方案

如果你使用的DataTables版本较低不支持bom参数,可以通过自定义导出内容回调手动添加UTF-8 BOM标识,配置如下:

{
    extend: 'csv',
    text: 'Export to CSV',
    className: 'btn btn-default',
    exportOptions: {
        columns: ':not(.notexport)'
    },
    customize: function (csvContent) {
        // 在CSV内容开头添加UTF-8 BOM标识
        return '\ufeff' + csvContent;
    }
}

内容的提问来源于stack exchange,提问作者Vince

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 13:36:03