node.js

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > node.js > NodeJs读取JSON文件的注意事项

NodeJs读取JSON文件格式化时的注意事项

作者:lopcomvir

本文是作者在进行NodeJs开发时偶然发现的问题,经过一番努力,最终找到解决方案,分享给大家,有需要的小伙伴可以参考下

进行NodeJs开发时偶然发现的一个雷点

正常情况下从JSON文件读取到字符后再通过JSON.parse没什么问题,只要格式不出错

有时在确保JSON格式正确时仍然会出现unexpected token异常

经过调查发现里面有不会显示的unicode字符

于是确定是UTF-8的问题,utf-8分有dom版和无dom版,一般编辑器不刻意设置会默认保存为带dom的utf8

解决办法是先将读到的文件转成二进制,然后检索dom符号删除

代码实现部分

function readText(pathname) {
    var bin = fs.readFileSync(pathname);

    if (bin[0] === 0xEF && bin[1] === 0xBB && bin[2] === 0xBF) {
        bin = bin.slice(3);
    }

    return bin.toString('utf-8');
}

您可能感兴趣的文章:
阅读全文