I am reading a JSON file using below code and getting java out of memory error:
BufferedReader br1 = new BufferedReader(new FileReader(filename));
try {
StringBuilder sb = new StringBuilder();
String line = br1.readLine();
while (line != null) {
sb.append(line);
}
result = sb.toString();
} catch (Exception e) {
e.printStackTrace();
}
I get below error:
java.lang.OutOfMemoryError: Java heap space
at java.util.Arrays.copyOf(Arrays.java:3332)
at java.lang.AbstractStringBuilder.ensureCapacityInternal(AbstractStringBuilder.java:124)
at java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:448)
at java.lang.StringBuilder.append(StringBuilder.java:136)
Later I realized there was a warning of resource leak for buffered reader
so I added code br1.close();
and warning was resolved. However, the issue of java heap space is stuck.
I even changed my file to a normal text file and added just one sample line to the file, but the issue persists.