Helo我有变音符号的问题..在Mysql中它很好我设置了你在这张照片中看到的utf8_general_ci
在我的网站上,你可以看到
但是当我导出到csv文件时不起作用.. 另一个带有变音符号的文件读取我的excel,但事实并非如此。
我使用此代码进行导出
function doCsv(){
var table = document.getElementById("exportTable").innerHTML;
var data = table.replace(/<thead>/g,'').replace(/<\/thead>/g,'')
.replace(/<tbody>/g,'').replace(/<\/tbody>/g,'')
.replace(/<tr role="row" class="odd">/g,'').replace(/<tr role="row" class="even">/g,'').replace(/<\/tr>/g,'\r\n')
.replace(/<th style="background-color:#6699ff;">/g,'').replace(/<\/th>/g,';')
.replace(/<td>/g,'').replace(/<\/td>/g,';')
.replace(/\t/g,'').replace(/\n/g,'');
var link = document.createElement('a');
link.download = "exportToCSV.csv";
link.href = "data:application/csv," + escape(data);
link.click();
如果我发出警报,它会保持良好状态:
有人帮我吗?
答案 0 :(得分:0)
请参阅%u0218
?这意味着某些东西正在转换为Unicode。你不想要那个。您想要utf8
(或utf8mb4
)。
从表格中选择十六进制。对于这些字母:ĂÎŞŢÂ
,如果在UTF-8中正确编码,则应该获得此十六进制:C482 C38E C59E C5A2 C382
。请注意,每个带重音的字母都会变为2个十六进制字节。
你的第二次尝试回归ĂÎŞŢÂ
,这是&#34; Mojibake&#34;为ĂÎŞŢÂ
。它的十六进制是C384E2809AC383C5BDC385C5BEC385C2A2C383E2809A
。
我讨论了Mojibake,并在Trouble with UTF-8 characters; what I see is not what I stored中指出了错误。
不知何故,您的Excel代码需要说出口UTF-8,而不是unicode。
您的表格必须为utf8
,而不是latin1
。
导入必须声明数据为utf8
。