昨天從FB下載了一份包含所有對話紀錄的JSON檔,但裡面的中文字編碼有問題,通通變成下面這個樣子
"\u00e7\u0094\u009f\u00e6\u0097\u00a5"
本來想說這種事情應該很簡單,就把他每個字元當成char
轉存不就得了,結果轉出來的東西從網頁上看還是一團亂碼…
錯誤的嘗試
既然轉換之後仍然是亂碼,那至少代表這個編碼不是utf-8
,那會不會是big5
或其他現在比較少看到的編碼呢?所以我試著切換 html 檔的 charset,但仍然得到錯誤的結果
çæ¥å¿«æ¨å //這到底是什麼鬼東西
整理思路
後來注意到一件小事情是,他所有的16進位資料都是\u00
開頭,或許意味著只有後兩位有意義?於是我把字頭全部取代後得到下面的結果
E7 94 9F E6 97 A5
這東西看起來很像是在使用記憶體修改器會看到的東西,於是我稍微有思緒了:他實際上應該是byte[]
。也循線找到了網站測試證明了我的想法是正確的