gpt4 book ai didi

Javascript 将 windows-1252 编码转换为 UTF-8

转载 作者:行者123 更新时间:2023-11-30 00:23:49 28 4
gpt4 key购买 nike

如何转换以下字符串:

var string = "Bouchard+P%E8re+et+Fils"

使用 javascript 转换成 UTF-8,这样 %E8 就会变成 %C3%A8?

原因是这个 Angular 色似乎被 decodeURIComponent 绊倒了

您可以通过将字符串放入 http://meyerweb.com/eric/tools/dencoder/ 来测试它并看到控制台错误 Uncaught URIError: URI malformed

我正在专门寻找可以解码整个 html 文档的东西,它声称是 windows-1252 编码的,我认为这个 %E8 字符是来自,转换为 UTF-8。

谢谢!

最佳答案

首先创建 Windows-1252 的 map 。您可以使用您选择的搜索引擎找到对编码的引用。

为了这个示例,我将在您的示例数据中包含 Angular 色。

然后找到所有百分号后跟两个十六进制字符,将它们转换为数字,并使用映射将它们转换(以获取原始数据),然后使用 encodeURIComponent 再次转换它们(以获取编码数据)。

var string = "Bouchard+P%E8re+et+Fils"

var w2512chars = [];
w2512chars[232] = "è"

var percent_encoded = /(%[a-fA-F0-9]{2})/g;

function filter(match, group) {
var number = parseInt(group.substr(1), 16);
var character = w2512chars[number];
return encodeURIComponent(character);
}

string = string.replace(percent_encoded, filter);
alert(string);

关于Javascript 将 windows-1252 编码转换为 UTF-8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32175125/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com