假设我刚刚使用a 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;
}
byte[]
内存中并通过new String(_bytes,"UTF-8")
(或什至按+=
字符串上的大块)进行转换是最有效的。链接InputStreams和Readers可能会更好,特别是在大文件上。
String fileString = new String(_bytes,"UTF-8");
呢?