public String(byte[] bytes, String enc)
throws UnsupportedEncodingException
使用指定的字符編碼 enc 將字節數組 bytes 解碼為字符串。新字符串的長度取決於編碼方式,未必等於字節數組長度。
bytes - 待轉換為字符的字節數組enc - 支持的字符編碼名稱 (如 "UTF-8", "GBK", "ISO8859_1")UnsupportedEncodingException - 指定的編碼不被支持時拋出JDK 1.1 引入
byte[] data = {0x48, 0x65, 0x6C, 0x6C, 0x6F}; // "Hello" in ASCII/UTF-8
String str = new String(data, "UTF-8"); // "Hello"
byte[] gbkBytes = "中文".getBytes("GBK");
String restored = new String(gbkBytes, "GBK"); // "中文"
此構造方法是處理網絡流、文件讀取、舊系統集成時字節到字符轉換的核心 API,務必顯式指定編碼以避免平台默認編碼導致的亂碼問題。