解决易语言调用API的编码或乱码问题

 时间:2024-11-02 16:41:43

如果大家用易语言编写过文本处理文档,那么应该就注意过这个问题。略坑爹的是易语言的内码是ANSI(GB2313)......处理文本时各种奇葩问题。。。(易语言你弄个GBK或者是GB18030-2005都比GB2312强啊!!!)

工具/原料

易语言

API编码问题

1、关于调用网络API的问题,由于经验限制,磕聆霖麸无法详细解释,笔者就简单说一下吧最简单,最容易出问题的也就是URL!!比如说:调用链接缩短帆歌达缒API,需要传递一个URL给服务端(服务端字符集为UTF-8),URL为:http://***.***.com?xxx=aaa&xxx=bbb&xxx=ccc等获得调用结果后,打开短链接,你会发现一个问题:http://***.***.com?xxx=aaa&xxx=bbb&xxx=ccc变成了http://***.***.com?xxx=aaa&xxx=bbb&xxx=ccc网页提示404!

2、至于原因水貔藻疽,笔者也说不清楚不过笔者做过一个对比测试:1.易语言本地使用BASE64将转换为字节集的文字进行编码,然后传输到自盘儡猸瑟己的服务端,服务端通过PHP解码,然后转码为UTF-8,再来调用API(这相当于用自己的服务端进行中转),结果还是出现步骤一的现象。2.易语言本地将转码为UTF-8的字节集,然后BASE64编码,使用自己的服务端进行中转,结果没有发生步骤一中的现象。

3、通过上述测试,我们就可以得出解决方法了,那就是在调用API前转码需要发送的数据为UTF8,再来调用API

乱码问题

1、通过上面的叙述,我们应该知道这应该是易语言中编码不一致导致的!知道了原因,解决就很简单了!

2、如果需要读取文本并进行操作就必须得转换为ANSI(GB2312)[GB2312是易语言默认的编码,也是固定了的编码。。。],才能进行操作,不然一堆乱码啥都干不了。。。

解决易语言调用API的编码或乱码问题

易语言如何静态编译(详细教程) 如何用易语言做一个按长度分割数字文本的工具 易语言注册热键的使用方法 易语言制作简易锁屏程序 易语言里面如何创建菜单和菜单项(详解)
热门搜索
巨人观图片 白板图片 烤肉图片 欧美人体艺术图片 新生儿湿疹图片