Java中常用的编码转换方法有以下几种:
- 使用
String
类的构造方法:
String str = new String(bytes, charsetName);
其中bytes
是原始字节数组,charsetName
是目标编码名称。
- 使用
String
类的getBytes
方法:
byte[] bytes = str.getBytes(charsetName);
其中str
是原始字符串,charsetName
是目标编码名称。
- 使用
InputStreamReader
和OutputStreamWriter
:
InputStreamReader isr = new InputStreamReader(inputStream, charsetName1); OutputStreamWriter osw = new OutputStreamWriter(outputStream, charsetName2);
其中inputStream
和outputStream
分别是原始输入流和输出流,charsetName1
和charsetName2
分别是原始编码和目标编码的名称。
- 使用
Charset
类:
Charset charset1 = Charset.forName(charsetName1); Charset charset2 = Charset.forName(charsetName2); ByteBuffer byteBuffer = charset1.encode(charBuffer); CharBuffer charBuffer = charset2.decode(byteBuffer);
其中charsetName1
和charsetName2
分别是原始编码和目标编码的名称。
注意:在编码转换过程中,需要注意原始编码和目标编码的正确性,以及可能出现的异常情况。