发布日期:2018-03-26
把用UTF-8编码的字节数组转换成字符串+ 查看更多
把用UTF-8编码的字节数组转换成字符串
+ 查看更多
发布日期:2018-03-08 16:59
分类:JAVA
浏览次数:66
如下:
假设我用BufferedInputStream来读取UTF-8编码的文本文件,使之变成字节数组。我知道下面的方法把字节数组转换成字符串,但比起迭代每一个字节并转换,有更高效的方法吗?
假设我用BufferedInputStream来读取UTF-8编码的文本文件,使之变成字节数组。我知道下面的方法把字节数组转换成字符串,但比起迭代每一个字节并转换,有更高效的方法吗?
public String openFileToString(byte[] _bytes) { String file_string = ""; for(int i = 0; i < _bytes.length; i++) { file_string += (char)_bytes[i]; } return file_string; }
回答
看看String的构造方法String str = new String(bytes, StandardCharsets.UTF_8);如果你很懒,你可以使用Apache Commons IO包直接将InputStream转换成字符串。
String str = IOUtils.toString(inputStream, StandardCharsets.UTF_8);