轉換方法:1、用「new TextDecoder('gbk').decode(new Uint8Array([...]).buffer)」語句;2、利用「iconv.decode(Buffer.from( [...]), 'gbk')”語句。
本教學操作環境:windows7系統、nodejs 14.15.4版,DELL G3電腦。
js 與nodejs 都有TextEncoder
TextDecoder
,可以進行編碼之間的轉換
##nodejs 版本需要>=8.3. 0 才支援
gbk 轉utf8#
new TextDecoder('gbk').decode(new Uint8Array([ 47, 63, 214, 208, 206, 196, 61, 56, 56 ]).buffer) // out: "/?中文=88"nodejs 建議透過
iconv or iconv-lite第三方函式庫進行編碼之間的轉換。因為使用原生TextEncoder需要完整的ICU Data 具體看這裡util_class_util_textdecoder
utf8 gbk 互轉
let iconv = require('iconv-lite'); // 这里是utf8 let str = '/?中文=88'; // utf8转换成gbk let encoded = iconv.encode(str, 'gbk'); console.log(encoded,encoded.toJSON()) // gbk转换成utf8 str = iconv.decode(Buffer.from([ 47, 63, 214, 208, 206, 196, 61, 56, 56 ]), 'gbk'); console.log('utf8 str:',str) // out: Buffer <2F, 3F, D6, D0, CE, C4, 3D, 38, 38> // Object {data: [47, 63, 214, 208, 206, 196, 61, 56, 56], type: "Buffer"} // utf8 str: "/?中文=88"##utf8 gbk 互轉【學習:《###nodejs 教學###》】###
以上是nodejs中怎麼將編碼gbk轉為utf8的詳細內容。更多資訊請關注PHP中文網其他相關文章!