作者:
XDXQQ (傑洛尼莫)
2017-04-24 20:30:21大家好
請問String要如何以Byte分割?
舉例來說
String a="ABC安";
想要將a以2byte來分割
可是當尾巴剛好遇到中文字時
若無法分割,則換下一個字串
結果就會變成a[0]="AB",a[1]="C",a[2]="安" 這樣
請問有辦法辦到嗎?
作者:
ssccg (23)
2017-04-24 20:43:00char是2byte不談byte數,你規則寫出來,不就照規則寫個迴圈做就好?
作者:
XDXQQ (傑洛尼莫)
2017-04-24 20:53:00我的意思是每個字串2byte,可是如果這個字串已經有一個英文字了,接下來那個字是中文不就塞不進去,需要到下一個字串,想請問JAVA中有沒有什麼涵式可以解決這種問題
作者:
ssccg (23)
2017-04-24 21:14:00英文就是2 byte
作者:
XDXQQ (傑洛尼莫)
2017-04-24 21:33:00英文字不是1byte嗎
作者:
ssccg (23)
2017-04-24 21:48:00不是
作者:
y3k (激流を制するは静水)
2017-04-24 21:50:00String.getBytes()自己實驗看看便知
作者:
ssccg (23)
2017-04-24 22:00:00getBytes是編碼後的結果,不一定...中文系統的話大概會用MS950變成英文1byte 中文2byteString本身其實本來就沒有byte數的概念,就是以char為單位只是java char在記憶體中是UTF-16
作者:
popcorny (畢業了..@@")
2017-04-24 23:51:00用Character.isIdeographic去判斷中日韓
作者:
XDXQQ (傑洛尼莫)
2017-04-25 01:12:00因為剛接觸java很多不懂,所以才會誤以為英文就是1byte