Re: [問題] 請問 Java 的 String 是否有結束符號呢?

看板java作者 (m...)時間19年前 (2007/03/13 15:05), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/2 (看更多)
※ 引述《endl (換行)》之銘言: : 以往在 C/C++ 中,可以用 \0 當做一個字串的結束符號,或是計算字串的長度 : 想請教的是,在 Java 中的 String,有沒有類似 \0 的字元呢?   Java 的 String 不像 C 一樣用 \0 作結束符號。 : 目前的問題大概如下: : byte [] str_arr = "ABCD".getBytes(); : byte [] out_arr = new byte[10]; : // 將 str_arr 複制到 out_arr 中 : System.out.println(new String(out_arr).length()); : ^^^^^^^^^^^^^^^ : 這邊 String 的長度會變成 10   此時字串內容為 "ABCD\u0000\u0000\u0000\u0000\u0000\u0000",   所以長度為 10. : 感覺起來一整個怪怪的...:( : 會有這個需求,是因為我要把 String 寫到檔案中,而檔案中分配給 String 的空間 : 是固定的(ex:10),當我寫入後,再讀出來時,String 的長度會不正確,不知道該 : 怎麼解決才好,目前的想法是碰到 0 之後的 byte 全都不轉成 String,不知道這樣 : 會不會有問題呢?   這個你可以自己試試看。 : 先謝了...:) -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.175.153.57
文章代碼(AID): #15zaqtmL (java)
文章代碼(AID): #15zaqtmL (java)