我有一个54,120字节的JSON文件,全部在一行
我正在尝试使用以下方法将其读入Android应用程序中的String:
//Method from class FileManager
public String readInternalFile(String filename) throws IOException {
Log.d(getClass().getName(),"Reading Internal File: " + filename);
// Open file
FileInputStream fIS = context.openFileInput(filename);
Log.d(getClass().getName(),"File is " + fIS.available() + " bytes");
// Process file
String s = "";
int ch;
while ((ch = fIS.read()) != -1) {
s += (char) ch;
}
//Close InputStream
if(fIS!= null){
fIS.close();
}
Log.d(getClass().getName(),"File is " + s.length() + " characters long");
return s;
}
当我在我的JUnit测试应用程序或模拟器中运行它时,我得到一个垃圾收集器的日志文本墙:
这似乎永远不会结束,并且正在减慢我的申请速度。有没有办法让我读到这个不会导致这个?
如果它有助于访问JSON文件here。这只是一个新闻Feed。
答案 0 :(得分:0)
此问题的解决方案是将JSON
文件格式化,然后将其读取到" 漂亮的打印"使用新行和缩进的样式,然后使用BufferedReader
和readLine()