JAVA RandomAccessFile writeBytes

來源:互聯網
上載者:User

標籤:random   throw   mac   out   bytes   順序   throws   void   bsp   

 

writeBytes
public final void writeBytes(String s)                      throws IOException
按位元組序列將該字串寫入該檔案。該字串中的每個字元均按順序寫出,並丟棄其高八位。寫入從檔案指標的當前位置開始
--

問題出在writeBytes(String s)這個方法上。

JAVA中的char是16位的,一個char儲存一個中文字元,直接用writeBytes方法轉換會變為8位,直接導致高8位丟失。從而導致中文亂碼。

解決方案:

現轉換為位元組組,再write寫入流。方法如下:

原方法:

out.writeBytes(json.toString());

新方法:

out.write(json.toString.getBytes());

JAVA RandomAccessFile writeBytes

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.