nodejs如何把utf-8的字符转化为gb2312

发布于 2022-09-03 09:07:11 字数 287 浏览 17 评论 0

我需要往一个网站 post一组数据 ,目标网站只接收gb2312编码的。其它接到是乱码。
nodejs如何把utf-8的字符转化为gb2312?



var iconv = require('iconv-lite');
var str = '你好';
str = iconv.encode(str,'utf8');
str = iconv.decode(str,'GB2312');
str = str.toString();
console.log(str); 

这样是不行的。求指导

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

葮薆情 2022-09-10 09:07:11

以前我也遇到过,你可以看看这个http://web-engineer.cn/article/29

绅刃 2022-09-10 09:07:11

一楼很赞,superAgent-charset 实现了功能!!!
可惜我声望达不到15

我做了相应的总结,可以见 : 链接描述

使用NodeJs 实现新闻Rss爬虫

峩卟喜欢 2022-09-10 09:07:11
iconv.encode(testString, 'utf8').toString('gb2312')

https://github.com/ashtuchkin...

醉生梦死 2022-09-10 09:07:11

var iconv = require('iconv-lite');

....

body = iconv.decode(body, 'gbk');

一场春暖 2022-09-10 09:07:11

const iconv = require('iconv-lite');
const chardet = require('chardet');

const filename = './gb18030.txt';
const utf8Str = "中文";

// 从 utf-8 转为 gb18030
let gb18030Str = iconv.encode(utf8Str, 'gb18030').toString('latin1');
console.log(gb18030Str); // 乱码

// 从 gb18030 转成 utf-8
let utf8StrBack = iconv.decode(Buffer.from(gb18030Str, 'latin1'), 'gb18030');
console.log(utf8StrBack);

// 探测文件的编码
chardet.detectFile(filename).then(encoding => console.log(encoding));

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文