看板 java 關於我們 聯絡資訊
大家好: 目前有一Java的問題 我想要將00 8C 這個Hex Code與一字串放在一起,例如: String AA = @#55558759 其中@這代表一個字元,其Hex Code是00 而#也是代表一個字元,其Hex Code是8C 我應如何將00 8C 填入@#這二個字元的位置呢? 因用過很多方式轉,但8C卻於UltraEdit的16進位上看變成3F了 但我是要8C String AA總長度為10字元 謝謝大家 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.182.159.182 ※ 文章網址: http://www.ptt.cc/bbs/java/M.1408808446.A.976.html
ssccg: 字元是字元,如果你要處理binary value,應該用byte 08/24 01:52
ssccg: 如果你硬要用String做,編碼都要指定ISO-8859-1 08/24 01:56
ssccg: 8C如果用ASCII、BIG5、UTF8,會因為找不到這個字元,被轉成 08/24 02:02
ssccg: FFFD (Unicode replacement character),再轉回來就變3F 08/24 02:03
ssccg: 3F就是?,都是代表不明字元 08/24 02:04
ssccg: 還有一個方法就是真的用字元來做,String AA = new String( 08/24 03:14
ssccg: char[]{0x00,0x8c,'5','5'...}),但是java的char是16bits 08/24 03:15
ssccg: 你想輸出成一個字元一個byte最終還是要轉成byte 08/24 03:15