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")
(또는 +=
문자열 에 청크를 통해) 변환하는 것이 가장 효율적 인지 확실하지 않습니다 . 입력 파일과 리더 연결은 특히 큰 파일에서 더 잘 작동 할 수 있습니다.
String fileString = new String(_bytes,"UTF-8");
없습니까?