1 回答

TA貢獻2037條經驗 獲得超6個贊
Java中字符串轉碼,根據實際運用的環境有以下三種方式
使用Java.lang.String
這是最常用的方法,先用對應編碼獲取字節,然后重新構造新編碼,示例代碼如下:
String s = "清山";
byte[] b = s.getBytes("utf-8");//編碼
String sa = new String(b, "gb2312");//解碼:用什么字符集編碼就用什么字符集解碼
java.io.InputStreamReader/OutputStreamWriter:橋轉換
讀寫文件的應用中,可以使用這種方式,直接在IO流構造中轉換,示例代碼如下:
InputStream is = new FileInputStream("C:/項目進度跟蹤.txt");//文件讀取
InputStreamReader isr = new InputStreamReader(is, "utf-8");//解碼
OutputStream os = new FileOutputStream("C:/項目進度跟蹤_gb2312.txt");//文件輸出
OutputStreamWriter osw = new OutputStreamWriter(os, "gb2312");//開始編碼
java.nio.Charset
使用nio中的Charset轉換字符,示例代碼如下:
Charset inSet = Charset.forName("utf-8"); // 解碼字符集
Charset outSet = Charset.forName("gb2312"); // 編碼字符集
CharsetDecoder de = inSet.newDecoder(); // 解碼器
CharsetEncoder en = outSet.newEncoder();// 編碼
- 1 回答
- 0 關注
- 3735 瀏覽
添加回答
舉報