我现在需要把不同编码的十六进制数转化为可看懂的文字,实现思路是怎样的?如gb2312、gbk、utf-8格式等

解决方案 »

  1.   

    第一:
          地址的解码
    Java代码 
    import java.net.URLDecoder;  
      
            URLDecoder.decode("要解码的内内容", "UTF-8");  
     
     
    第二:
         编码
        
    Java代码 
    import java.net.URLEncoder;  
      
      
    URLEncoder.encode("要编码的内容", "UTF-8");  
      

  2.   

    我现在需要把不同编码的十六进制数转化为可看懂的文字,实现思路是怎样的?如gb2312、gbk、utf-8格式等---------------
    你这里的十六进制数长啥样子的?
      

  3.   

    3#:我的十六进制数是这样的:3c21646f63747970652068746d6c3e3c
    68746d6c3e3c686561643e3c6d657461
    20687474702d65717569763d22436f6e
    74656e742d547970652220636f6e7465
    6e743d22746578742f68746d6c3b6368
    61727365743d676232333132223e3c74
    69746c653eb0d9b6c8d2bbcfc2a3acc4
    e3becdd6aab5c02020202020203c2f74
    69746c653e3c7374796c653e626f6479
    7b666f6e743a3132707820617269616c
    3b746578742d616c69676e3a63656e74
    65723b6261636b67726f756e643a2366
    66667d626f64792c702c666f726d7b6d
    617267696e3a303b70616464696e673a
    307d626f64792c666f726d2c236c677b
    706f736974696f6e3a72656c61746976
    657d74647b746578742d616c69676e3a
    6c6566747d696d677b626f726465723a
    307d617b636f6c6f723a233030637d61
    3a6163746976657b636f6c6f723a2366
    36307d23757b70616464696e673a3770
    7820313070782033707820303b746578
    742d616c69676e3a72696768747d236d
    7b77696474683a36353070783b6d6172
    67696e3a30206175746f7d236e767b66
    6f6e742d73697a653a313670783b6d61
    7267696e3a30203020347078202d3332
    70787d236e7620612c236e7620622c23
    73752c236c6b7b666f6e742d73697a65
    3a313470787d236c677b6d617267696e
    3a2d313770782030203970787d23666d
    7b70616464696e672d6c6566743a3131
    3170783b746578742d616c69676e3a6c
    6566747d236b777b77696474683a3339
    3170783b6c696e652d6865696768743a
    313670783b70616464696e673a337078
    203170783b6d617267696e3a30203670
    78203020303b666f6e743a3136707820
    617269616c7d2373757b77696474683a
    373870783b6865696768743a32387078
    3b6c696e652d6865696768743a323470
    787d236b772c2373757b766572746963
    616c2d616c69676e3a6d6964646c657d
    236c6b7b6d617267696e3a3333707820
    307d236c6b207370616e7b666f6e743a
    313470782022cbcecce5227d236c6d7b
    6865696768743a363070787d236c687b
    6d617267696e3a313670782030203570
    783b666f6e743a313270782022cbcecc
    e5227d236c6820617b666f6e743a3132
    707820617269616c7d2368707b706f73
    6974696f6e3a6162736f6c7574653b6c
    696e652d6865696768743a313470783b
    6d617267696e3a302030203020367078
    3b746f703a2d3170783b2a746f703a32
    70787d2363702c23637020617b636f6c
    6f723a233737637d2373787b636f6c6f
    723a233030433b746578742d6465636f
    726174696f6e3a756e6465726c696e65
    3b637572736f723a706f696e7465723b
    7d3c2f7374796c653e3c2f686561643e
    0d0a以上数字的编码格式是gb2312
      

  4.   

    如果等待转换的十六进制,在转换前已经预知了它的编码,就相对简单了。
    (数据小的话,直接new个String对象,就能搞定)
    如果等待转换的十六进制信息,在转换前,并不知道是采用了什么编码的字符串,那就复杂了。
    可以尝试使用Mozilla的字符编码探测算法,进行解码。