Node.js 如何在NodeJS中编码unicode字符

Node.js 如何在NodeJS中编码unicode字符,node.js,unicode,fs,Node.js,Unicode,Fs,我使用NodeJS从电子表格中读取一系列键和值来构建JSON对象,然后将该对象写入文件,例如,keyvalue成为对象{“key”:“value”} 我使用JSON.stringify将对象转换为字符串,然后将该字符串写入文件 fs.writeFileSync('object.json', JSON.stringify(object, null, 2)); 电子表格包含一些unicode字符,这些字符需要作为编码值存储,例如éas\u00E9,上面的代码段不处理这些字符 如何对文件中的unic

我使用NodeJS从电子表格中读取一系列键和值来构建JSON对象,然后将该对象写入文件,例如,keyvalue成为对象{“key”:“value”}

我使用JSON.stringify将对象转换为字符串,然后将该字符串写入文件

fs.writeFileSync('object.json', JSON.stringify(object, null, 2));
电子表格包含一些unicode字符,这些字符需要作为编码值存储,例如éas\u00E9,上面的代码段不处理这些字符


如何对文件中的unicode字符进行编码,例如,“Numéro”存储为“Num\u00E9ro”

您可以使用插件对字符字符串进行编码,也可以手动使用简单的正则表达式进行编码:

exports.unicodeAccent = function(str)
{
var charset = [
    "€",
    "À",
    "Á",
    "Â",
    "Ã",
    "Ä",
    "Å",
    "à",
    "á",
    "â",
    "ã",
    "ä",
    "å",
    "Ò",
    "Ó",
    "Ô",
    "Õ",
    "Õ",
    "Ö",
    "Ø",
    "ò",
    "ó",
    "ô",
    "õ",
    "ö",
    "ø",
    "È",
    "É",
    "Ê",
    "Ë",
    "è",
    "é",
    "ê",
    "ë",
    "ð",
    "Ç",
    "ç",
    "Ð",
    "Ì",
    "Í",
    "Î",
    "Ï",
    "ì",
    "í",
    "î",
    "ï",
    "Ù",
    "Ú",
    "Û",
    "Ü",
    "ù",
    "ú",
    "û",
    "ü",
    "Ñ",
    "ñ",
    "Š",
    "š",
    "Ÿ",
    "ÿ",
    "ý",
    "Ž",
    "ž"
];

for(var i = 0; i < charset.length; i++)
{
    var code        = ("00000000"+(charset[i].charCodeAt(0).toString(16))).slice(-4);
    var unicodeStr  = "\\u"+code;

    var re  = new RegExp(charset[i], "gm");
    str = str.replace(re, unicodeStr);

}

return str;

}
exports.unicodeAccent=函数(str) { 变量字符集=[ "€", "À", "Á", "Â", "Ã", "Ä", "Å", "à", "á", "â", "ã", "ä", "å", "Ò", "Ó", "Ô", "Õ", "Õ", "Ö", "Ø", "ò", "ó", "ô", "õ", "ö", "ø", "È", "É", "Ê", "Ë", "è", "é", "ê", "ë", "ð", "Ç", "ç", "Ð", "Ì", "Í", "Î", "Ï", "ì", "í", "î", "ï", "Ù", "Ú", "Û", "Ü", "ù", "ú", "û", "ü", "Ñ", "ñ", "Š", "š", "Ÿ", "ÿ", "ý", "Ž", "ž" ]; 对于(var i=0;i谢谢,工作很好!唯一的问题是\u在输出JSON文件中存储为“\\u”