用java把utf-8转成中文
时间: 2024-06-12 17:04:10 浏览: 155
UTF-8是一种编码方式,它可以用来表示各种语言的字符,包括中文。因此,将UTF-8转换成中文并不是一件意义明确的事情。
如果你是想把UTF-8编码的字符串转换成中文字符,可以使用Java提供的标准库中的UTF-8解码器。示例代码如下:
```
String utf8Str = "中文字符串";
byte[] utf8Bytes = utf8Str.getBytes("UTF-8");
String chineseStr = new String(utf8Bytes, "UTF-8");
System.out.println(chineseStr);
```
这段代码将一个包含中文字符的字符串`utf8Str`转换成UTF-8编码的字节数组`utf8Bytes`,然后再将字节数组解码成中文字符串`chineseStr`。最后,将中文字符串打印出来。
如果你是想将UTF-8编码的文件中的内容转换成中文字符,可以使用Java提供的`InputStreamReader`和`BufferedReader`来读取文件并解码。示例代码如下:
```
try (InputStream inputStream = new FileInputStream("utf8file.txt");
InputStreamReader inputStreamReader = new InputStreamReader(inputStream, "UTF-8");
BufferedReader bufferedReader = new BufferedReader(inputStreamReader)) {
String line;
while ((line = bufferedReader.readLine()) != null) {
System.out.println(line);
}
} catch (IOException e) {
e.printStackTrace();
}
```
这段代码打开一个UTF-8编码的文件`utf8file.txt`,使用`InputStreamReader`将文件中的字节流解码成字符流,再使用`BufferedReader`按行读取字符流并打印出来。注意,在使用`InputStreamReader`时需要指定编码方式为UTF-8。如果不指定,默认的编码方式可能是系统默认的编码方式,可能导致中文字符无法正确解码。
阅读全文