作者:
danny8376 (釣到一隻猴子@_@)
2014-03-25 15:47:29※ 引述《Lordaeron (Terry)》之銘言:
: ※ 引述《LPH66 (186106078)》之銘言:
: : getBytes 應該就正是你所需要的東西
: : String.getBytes 共有四個 overload, 其中一個是舊時代的東西所以不管它
: : 剩下的三個是
: : getBytes()
: : getBytes(Charset)
: : getBytes(String)
: : 你用的應該是第一個, 它會轉成你的 system default charset
: : 你所需要的則是第二或第三個, 所傳進去的參數代表你要轉成的 charset
: : 第二個用 Charset 物件, 第三個則是直接傳入那個 Charset 的名字
: : 最簡單的做法就是用第三個然後傳入 "UTF-8" 就可以了
: :
若果是這麼聰明, 為何會有encoding的參數的呢?
作者:
LPH66 (-6.2598534e+18f)
2014-03-25 16:13:00"這中間會把檔案用你指定的big5去解碼" 該參數就是這個指定當不指定時通常會取用我所寫的 system default charset所以這部份很多人並不會去注意到, 因為已經這樣處理掉了
作者:
danny8376 (釣到一隻猴子@_@)
2014-03-25 17:51:00用big5 你要的編碼 <= 這就是encoding參數 懂?
作者:
LPH66 (-6.2598534e+18f)
2014-03-26 02:26:00咦, 我以為我在二樓已經回了你的問題了...看來是我語焉不詳我應該要詳細說"你問的encoding參數就是這回文中所提到的「用你指定的big5」這個指定" 這樣才不會被忽略過去...
Java 中 "字串" 的編碼永遠是 UTF-16. Period.Lordaeron 建議還是去看一些基礎的文章之類,搞清楚byte & char 在 Java 中的概念。