nodejs中文乱码问题

By | 2016年4月5日

最近在windows上使用nodejs做一些小应用,使用中文的时候经常会遇到乱码问题,
比如使用exec方法执行一些系统命令的时候,接收到的stdout内容总是乱七八糟~~

目前总结的比较有效的方法是在所有需要字符串传输的地方都使用iconv进行gbk转码:

    exec(cmdStr, {encoding: "gbk"}, function(err, stdout, stderr) {
        if (! err) {
            console.log(iconv.decode(stdout, "GBK"));
        } else {
            console.log(iconv.decode(stderr, "GBK"));
        }
    });

经过处理之后的字符串打印到控制台或者作为服务器响应到客户端都可以完美显示!

发表评论

电子邮件地址不会被公开。 必填项已用*标注