作者neigence ()
站內java
標題[問題] 中文字有沒有可能出現 newline ??
時間Sun Oct 31 15:34:55 2010
一般我們寫socket程式 很容易喜歡用newline 來當命令間的間格
伺服器端很有可能這樣寫(pesudo code)
BufferedReader br;
while(String str = br.readline()){
Commander.execute(str);
}
另外提到中文字 不論用big5 或者是 utf8,中文字都是由多個byte組合而成
會不會有一個問題是 某個中文字的其中一個byte是 ascii的10號(也就是newline)
進而導至bufferedreader以\n來切而切錯
如果有這樣的問題 該如何解決呢??
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 58.115.136.152
→ neigence:剛才wiki一下 覺得utf-8應該不會有這問題 但big5嘛... 10/31 16:04
→ stupid0319:不可能出現newline放心好了..雙位元編碼一定是129之後 10/31 16:14
→ wendly777:java通通都是轉成utf16在處理,所以不會遇到這個問題 10/31 21:56
→ wendly777:如果socket傳輸是用utf8,BufferedReader要指定utf8 10/31 22:00
→ wendly777:然後java會將utf8轉成utf16,之後內部處理都是utf16 10/31 22:03