求助!易语言解析网站时偶尔乱码的问题
代码是用E2EE执行GET来访问Url,再通过字节集取中间从而获得需要的Json。出现的问题是最后取出的 title 有的时候会是乱码的,有的时候是正常的(有时候显示乱码了,重新运行一遍结果又正常了。)请问偶尔乱码这个问题要怎么解决?如果不能从源头解决,有没有办法把运行结果是乱码的 title 识别出来,并加以拦截。{:17_1065:}
.版本 2
.支持库 e2ee
.支持库 spec
.局部变量 e2ee, 网站客户端
.局部变量 键值表, 存取键值表
.局部变量 url, 文本型
.局部变量 小红书链接, 文本型
.局部变量 ret_bin, 通用型
.局部变量 temp_bin, 字节集
url = “https://www.xiaohongshu.com/explore/640067a100000000270119b5”
e2ee.执行GET (url, ret_bin, 假, )
temp_bin = 字节集_取中间 (ret_bin, 到字节集 (#常量1), 到字节集 (#常量2), ) + 到字节集 (#常量2)
temp_bin = 字节集_取中间 (temp_bin, 到字节集 (#常量1), 到字节集 (#常量2), ) + 到字节集 (“}”)
写到文件 (取运行目录 () + “\json.txt”, temp_bin)
键值表.从文件载入 (取运行目录 () + “\json.txt”, )
调试输出 (键值表.取文本 (“//title”))
.版本 2
这两个是正常和乱码的Json,txt内容和E2EE.Json助手解析结果都没啥区别,也是显示正常的。但是在易语言中用键值表.从文件载入 (取运行目录 () + “\json.txt”, )再取值调试输出就会出现一个乱码而另一个不乱码。。。 不应该先指定下编码吗 调味包 发表于 2023-6-12 16:41
不应该先指定下编码吗
请问如何指定编码呀,萌新不懂就问{:17_1074:} var f: File;
f.Open("json.txt", OpenMode.Read, EncodingType.UTF8);// 指定编码方式为UTF-8
试试看这是gpt给的答复
或者是
var f: File;
f.Open("json.txt", OpenMode.Read);
var content := f.ReadAll();// 不指定编码方式读取
// 将数据从GB2312转换为UTF-8
var utf8_content := Encoding.Convert(Encoding.GB2312, Encoding.UTF8, content);
// 使用转换后的数据进行后续操作
添加精易模块 编码_GB2312到uft-8 有可能是少模块了。可以试试添加看看
页:
[1]