下面是对“js 编码转换 gb2312 和 utf8 互转的2种方法”的完整攻略:
JS 编码转换 GB2312 和 UTF-8 互转的 2 种方法
在 JavaScript 中,有时需要将字符串从 GB2312 编码转换为 UTF-8 编码或者将字符串从 UTF-8 编码转换为 GB2312 编码。下面介绍两种方法可以实现这个功能。
方法 1:使用 TextEncoder 和 TextDecoder 对象进行编码转换
在 ES6 中,可以使用 TextEncoder
和 TextDecoder
对象来完成编码转换操作。
将 GB2312 编码的字符串转换为 UTF-8 编码的字符串
const gb2312String = '中文字符';
const gb2312Encoder = new TextEncoder('gb2312');
const utf8Decoder = new TextDecoder('utf-8');
const utf8Array = gb2312Encoder.encode(gb2312String);
const utf8String = utf8Decoder.decode(utf8Array);
console.log(utf8String);
将 UTF-8 编码的字符串转换为 GB2312 编码的字符串
const utf8String = '中文字符';
const utf8Encoder = new TextEncoder('utf-8');
const gb2312Decoder = new TextDecoder('gb2312');
const gb2312Array = utf8Encoder.encode(utf8String);
const gb2312String = gb2312Decoder.decode(gb2312Array);
console.log(gb2312String);
方法 2:使用 iconv-lite 库进行编码转换
iconv-lite
是一个基于 Node.js 的编码转换库,可以方便地进行各种编码之间的转换。可以使用 npm 安装:
npm install iconv-lite
将 GB2312 编码的字符串转换为 UTF-8 编码的字符串
const iconv = require('iconv-lite');
const gb2312String = '中文字符';
const utf8String = iconv.decode(iconv.encode(gb2312String, 'gb2312'), 'utf-8');
console.log(utf8String);
将 UTF-8 编码的字符串转换为 GB2312 编码的字符串
const iconv = require('iconv-lite');
const utf8String = '中文字符';
const gb2312String = iconv.decode(iconv.encode(utf8String, 'utf-8'), 'gb2312');
console.log(gb2312String);
以上就是 JS 编码转换 GB2312 和 UTF-8 互转的 2 种方法,你可以根据实际需要来选择使用哪一种方式。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:js 编码转换 gb2312 和 utf8 互转的2种方法 - Python技术站