在 Java 中,除了 native2ascii 工具外,还有多种工具和方法可以进行编码转换。以下是一些常用的工具和方法:
String.getBytes()方法:
通过 String 类的 getBytes(String charsetName) 方法,可以将字符串转换为指定编码的字节数组。这是最常用的编码转换方法。
示例:
java String str = "你好"; byte[] utf8Bytes = str.getBytes("UTF-8"); byte[] gbkBytes = str.getBytes("GBK");
Charset类:
Java NIO 提供的 Charset 类可以用于更灵活的编码转换。你可以通过 Charset.forName("charsetName") 获取指定字符集的实例,并使用它进行编码和解码。
示例:
java Charset utf8 = Charset.forName("UTF-8"); Charset gbk = Charset.forName("GBK"); byte[] gbkBytes = str.getBytes(gbk); String decodedStr = new String(gbkBytes, utf8);
java.net.URLEncoder和java.net.URLDecoder:
用于处理 URL 编码和解码,确保字符串在 URL 中的安全性。
示例:
java String encoded = URLEncoder.encode("你好", "UTF-8"); String decoded = URLDecoder.decode(encoded, "UTF-8");
- Hutool 工具库:
Hutool 是一个常用的 Java 工具库,提供了丰富的编码转换功能,包括 Unicode 和字符串之间的转换、字符集的转换等。
示例:
java String utf8Str = Convert.convertCharset(garbled, CharsetUtil.ISO_8859_1, CharsetUtil.UTF_8);
- Apache Commons Codec:
这个库提供了多种编码和解码功能,包括 Base64 编码、Hex 编码等,可以用于处理字符串的编码转换。
- 自定义工具类:
你可以根据需要编写自己的工具类,封装常用的编码转换逻辑,以便在项目中复用。
这些工具和方法可以帮助你在 Java 中灵活地处理各种编码转换需求,确保字符串在不同编码之间的正确转换和显示。
叶一云





