我试图读取一个内部有json的文件.txt,但我得到的是FileNotFoundException,而obj是null。我认为路径是错误的,但我在其他问题中已经看到这是正确的......
我正在使用Windows,是的,我将文件放在此路径中。
JsonParser parser = new JsonParser();
Object obj;
try {
obj = parser.parse(new FileReader("C:/Users/Kevin/jsontest.txt"));
}catch(FileNotFoundException f){
}
答案 0 :(得分:0)
我不确定您的目标是什么,但您可以先检查失败是来自FileReader
对象(或路径),然后再将其添加到JsonParser
对象。注意:尝试将文件放在与编写java文件相同的工作区中。
答案 1 :(得分:0)
使用Files.lines。如果你想逐行阅读,这就行了。
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.stream.Stream;
public class Readfile {
public static void main(String args[]) {
final Path location = Paths.get("C:/Users/Kevin/jsontest.txt");
try (Files.lines(location)) {
lines.forEach(line ->
System.out.println(line)
);
} catch (IOException e) {
// we have a problem
}
}
}
以上是逐行处理文本文件。
另一方面,如果您尝试解析JSON,请使用Jackson。
答案 2 :(得分:0)
尝试此选项。
输入此代码:
Resources res = getResources();
InputStream in = res.openRawResource(R.raw.jsontest);
String json = IOUtils.toString(in);
IOUtils.closeQuietly(in);
将此String放在JsonObject
中JSONObject j = new JSONObject(fakejson);
也许您需要导入Utils。将其添加到gradle:
编译'commons-io:commons-io:2.4'