我正在尝试读取一个大文件 (>150MB) 并将文件内容作为ByteArrayOutputStream
. 这是我的代码...
private ByteArrayOutputStream readfileContent(String url) throws IOException{
log.info("Entering readfileContent ");
ByteArrayOutputStream writer=null;
FileInputStream reader=null;
try{
reader = new FileInputStream(url);
writer = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int bytesRead = reader.read(buffer);
while (bytesRead = > -1) {
writer.write(buffer, 0, bytesRead);
buffer = new byte[1024];
}
}
finally {
writer.close();
}
log.info("Exiting readfileContent ");
return writer;
}
我得到一个java.lang.OutOfMemoryError: Java heap space exception
. 我尝试增加 java 堆大小,但它仍然会发生。有人可以帮助解决这个问题。