RangerWolf
V2EX  ›  问与答

有没有办法判断一个字符串里面是否有乱码?

  •  
  •   RangerWolf · Oct 20, 2015 · 3667 views
    This topic created in 3950 days ago, the information mentioned may be changed or developed.
    举个例子:
    MyEPSON Connect⼀꺾䌄腤蠀 Adobe AIR


    上面明显知道是两个 app 的名字之间出现了乱码, 但是我不知道有什么办法能检测到名字之中有乱码,如果能定位到乱码在的位置就更好了。。。

    注意: app 的名字可能确实有中日韩文出现~ 甚至可能出现阿拉伯文。。。
    4 replies    2015-10-21 09:26:55 +08:00
    yeyeye
        1
    yeyeye  
       Oct 20, 2015
    乱码本身就不是“乱码”。乱码是编码错误导致从字库表里出来的字是错误的,但是那些字又不是“错字”,虽然编码错了,但是依然成功的获取到了文字,它就是正确的!

    也就是说,你写信的时候写错了地址,邮递员是不可能知道的。只有当他发现到了那个地方,却找不到相对精确的人或位置时才知道错了。明白了?除非你限定范围,限定字符编码的范围(每个字符都是一个数字,定义在这种编码表里的第几个字)

    否则电脑是不知道你是打错了字,还是说这是一个新的网络词语。
    RangerWolf
        2
    RangerWolf  
    OP
       Oct 21, 2015
    @yeyeye 看来还得准备一个乱码字符表?
    yeyeye
        3
    yeyeye  
       Oct 21, 2015
    @RangerWolf 从你的主题来看,其中只存在一个乱码,所以只要你把乱码的范围记录下来,做检测就行了,中间有 4 个中文字已经显示出来的,是不能作为乱码范围的,因为那是正常的文字啊
    RangerWolf
        4
    RangerWolf  
    OP
       Oct 21, 2015
    @yeyeye 乱码还有其他的样子的~ 比如: Microsoft Visual C++ 2013 Redistributable (x86) - 12.0.30501㵊恽ᬰ耀 c:\Program Files\Common Files\Micros Microsoft Corporation

    乱码以及后面的内容都是无效的~
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3324 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 11:05 · PVG 19:05 · LAX 04:05 · JFK 07:05
    ♥ Do have faith in what you're doing.