Maison >interface Web >Questions et réponses frontales >Comment convertir l'encodage gbk en utf8 dans nodejs
Méthode de conversion : 1. Utilisez l'instruction "new TextDecoder('gbk').decode(new Uint8Array([...]).buffer)" ; 2. Utilisez "iconv.decode(Buffer.from([.. .] ]), 'gbk')".
L'environnement d'exploitation de ce tutoriel : système windows7, nodejs version 14.15.4, ordinateur DELL G3.
js et nodejs ont tous deux TextEncoder
TextDecoder
et peuvent convertir entre les encodages
La version de Nodejs nécessite >=8.3.0 pour prendre en charge util.TextEncoder, util.TextDecoder
gbk en utf8
new TextDecoder('gbk').decode(new Uint8Array([ 47, 63, 214, 208, 206, 196, 61, 56, 56 ]).buffer) // out: "/?中文=88"
nodejs recommande en utilisant des bibliothèques tierces iconv ou iconv-lite pour convertir entre les encodages. Étant donné que l'utilisation de TextEncoder natif nécessite des données ICU complètes, veuillez consulter ici pour plus de détails util_class_util_textdecoder
utf8 gBK conversion mutuelle
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"
【Apprentissage recommandé : "tutoriel Nodejs"】
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!