假设我刚刚使用 aBufferedInputStream将 UTF-8 编码文本文件的字节读入字节数组。我知道我可以使用以下例程将字节转换为字符串,但是有没有比仅遍历字节并转换每个字节更有效/更智能的方法呢?
BufferedInputStream
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:
String str = IOUtils.toString(inputStream, StandardCharsets.UTF_8);