给遇到乱码问题的朋友,提供个思路吧,建议直接看后面的解决方法
遇到一个网页显示中文乱码的问题,特别奇怪,折腾了好久。被老大一番神操作给折服了,还能有这样的操作,666呀。
问题是这样的,我需要添加一个功能,而这个功能是通过宏控制了,那么就要求网页上的显示需要通过c代码写入,就是server会对网页中的C函数解析写入html内容。但是这个写入的内容中的汉字在网页上显示乱码,而网页中原来就包含的中文显示正常。该网页是utf-8的编码。
刚开始以为是编码问题,将下面的配置utf-8改为了gbk。
然后网上还查到其他配置编码的方法,一番乱改尝试。
这些都没解决乱码。
后发现有另外一个页面有写入中文,可以正常显示,于是将内容换写入到这个页面,然而。。。还是乱码。
后来请教同事,各种操作,甚至抓包比较16进制数,依然无法解决。
最后,只能先发patch出去,等这个问题解决了再入库。
后来,老大说他曾遇到过这个问题,给我秀了一下操作。。。只能这么操作,换码后直接复制过去也没用。
————————————————————分割线————————————————
解决方法:
1.新建一个txt文件,然后在notepad++中打开输入显示乱码的中文,如下图。
2.然后将选择 编码-转为UTF-8无BOM编码格式,然后保存。注意不能选UTF-8编码格式。BOM是字节序标记,我猜由于输入的是带字节序标记的汉字,导致了网页乱码。这两者的区别可以参考
https://blog.csdn.net/forest_fire/article/details/50943980
3.然后用sourceinsight打开,发现都变成了乱码,我们就是需要这个乱码。
4.最后复制这些乱码到需要的地方,然后网页上就会显示正常的汉字了。