文章出處

進行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');}


歡迎轉載:http://www.kanwencang.com/bangong/20161116/54105.html

文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()