老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業提供網站建設、域名注冊、服務器等服務

使用nodejs讀取本地json文件出現亂碼如何解決-創新互聯

今天就跟大家聊聊有關使用nodejs讀取本地json文件出現亂碼如何解決,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

創新互聯公司服務項目包括靜海網站建設、靜海網站制作、靜海網頁制作以及靜海網絡營銷策劃等。多年來,我們專注于互聯網行業,利用自身積累的技術優勢、行業經驗、深度合作伙伴關系等,向廣大中小型企業、政府機構等提供互聯網行業的解決方案,靜海網站推廣取得了明顯的社會效益與經濟效益。目前,我們服務的客戶以成都為中心已經輻射到靜海省份的部分城市,未來相信會繼續擴大服務區域并繼續獲得客戶的支持與信任!

1. 確定json文件是UTF-8 無BOM編碼的的。如果有BOM,會在讀取第一行的時候出現亂碼。

Per "fs.readFileSync(filename, 'utf8') doesn't strip BOM markers #1918", fs.readFile is
working as designed: BOM is not stripped from the header of the UTF-8 file, if it exists. It at the discretion of the developer to handle this.

Possible workarounds:

  • data= data.replace(/^\uFEFF/, ''); perhttps://github.com/joyent/node/issues/1918#issuecomment-2480359

  • Transform the incoming stream to remove the BOM header with the NPM module bomstrip perhttps://github.com/joyent/node/issues/1918#issuecomment-38491548

What you are getting is the byte order mark header (BOM) of the UTF-8 file. When JSON.parse sees
this, it gives an syntax error (read: "unexpected character" error). You must strip the byte order mark from the file before passing it to JSON.parse:

fs.readFile('./myconfig.json', 'utf8', function (err, data) {
  myconfig = JSON.parse(data.toString('utf8').replace(/^\uFEFF/, ''));
});
// note: data is an instance of Buffer

2. 確定json沒有格式錯誤。我在用utf8編碼并用utf8 encoding來讀取文件之后依然報錯,百思不得其解。

最后發現json有兩個editor沒有發現的格式錯誤,一個是一個數組中兩個元素之間少了一個“,”,另一個是另一個數組最后多了一個“,”。

注1:Node的iconv模塊,僅支持linux,不支持Windows,因此要用純js的iconv-lite,另:作者說iconv-lite的性能更好,具體參考Git站點:iconv-lite

注2:我在測試讀寫文件時,始終無法把中文寫入文件,一直亂碼,讀取正常,后來同事幫我發現:js文件的編碼格式是ansi,nodejs的代碼文件必須是utf8格式

注3:如果程序操作的文件,都是以UTF8編碼格式保存的,那么就不需要使用iconv模塊,直接以utf8格式讀取文件即可,如:

// 參數file,必須保存為utf8格式,否則里面的中文會亂碼  
function readFile(file){  
    // readFile的第2個參數表示讀取編碼格式,如果未傳遞這個參數,表示返回Buffer字節數組  
    fs.readFile(file, "utf8", function(err, data){  
        if(err)  
            console.log("讀取文件fail " + err);  
        else{  
            // 讀取成功時  
            console.log(data);// 直接輸出中文字符串了  
        }  
    });  
}

nodejs讀取中文文件編碼問題

準備一個文本文件(當然也可以是csv文件等)test.txt和text.csv,nodejs文件test.js如下:

var iconv = require('iconv-lite');  
  
var fs = require('fs');  
var fileStr = fs.readFileSync('D:\\test.csv', {encoding:'binary'});  
  
var buf = new Buffer(fileStr, 'binary');  
  
var str = iconv.decode(buf, 'GBK');  
console.log(str);

看完上述內容,你們對使用nodejs讀取本地json文件出現亂碼如何解決有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注創新互聯成都網站設計公司行業資訊頻道,感謝大家的支持。

另外有需要云服務器可以了解下創新互聯scvps.cn,海內外云服務器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務器、裸金屬服務器、高防服務器、香港服務器、美國服務器、虛擬主機、免備案服務器”等云主機租用服務以及企業上云的綜合解決方案,具有“安全穩定、簡單易用、服務可用性高、性價比高”等特點與優勢,專為企業上云打造定制,能夠滿足用戶豐富、多元化的應用場景需求。


名稱欄目:使用nodejs讀取本地json文件出現亂碼如何解決-創新互聯
網頁網址:http://www.xueling.net.cn/article/cegohs.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 人妻在线日韩免费视频 | 密室大逃脱第6期免费观看 一区二区无码免费视频网站 | 性一交一乱一色一欲的最新章节 | 日本特一级片 | 麻豆人人妻人人妻人人片AV | 欧美黄色av | av网站播放 | 亚洲欧美国产网曝综合网 | 成人www视频 | 小小影视网在线观看 | 嫩草嫩草嫩草嫩草嫩草 | 国产真实强奷系列在线观看 | 操人网址 | 日本九九热在线观看官网 | 国产乱码日产乱码精品精 | 国产精品久久久久久久午夜 | 特黄一区二区 | 国产精品亚欧美一区二区 | 日韩在线中文字幕 | 精品无码黑人又粗又大又长 | 亚洲人成人网站在线观看 | 99热这里只有精品99 | 九九热只有精品 | 国产精品Ⅴ无码大片在线看 | 超碰人人99 | 成人一区av | 国产在线观看免费版 | 337P大胆啪啪私拍人体 | 做爰全过程免费120秒 | 92看片淫黄大片一级 | 国产aⅴ无码久久丝袜美腿 国产麻豆精品一区二区 | 天天做天天爱天天操 | 亚洲精选av| 精品国产性色无码av网站 | 国产精品国产三级国产普通 | 久久精品国产久精国产思思 | 欧美一级大片在线视频 | bnb998成人免费| 黄色片在线免费 | 性淫视频| 国产亚洲美女视频 |