在看慕课网上的json快速入门(java版)里面有如下代码:
1 public static void main(String[] args) throws IOException, JSONException { 2 File file = new File(ReadJSONSample.class.getResource("/wangxiao.json").getFile()); 3 String content = FileUtils.readFileToString(file); 4 JSONObject jsonObject = new JSONObject(content); 5 System.out.println("姓名是:"+jsonObject.getString("name")); 6 System.out.println("年龄是:"+jsonObject.getDouble("age")); 7 System.out.println("是否有女朋友:"+jsonObject.getBoolean("has_girlfriend")); 8 JSONArray majorArray = jsonObject.getJSONArray("major"); //获取json中的一个数组对象 需要借助JSONArray对象 9 for(int i=0;i<majorArray.length();i++){ 10 System.out.println(majorArray.get(i)); 11 }
我使用的是window+idea17,用maven构建的项目,我的项目结构如下:
wangxiao.json这个文件放在java包下,读取文件的方法,放置在json包下。运行结果如下
抛出了一个 java..lang.NullPointerException的异常。来到我项目编译后的目录进行查看。就是项目位置\target\classes\目录下。我的目录内容如下:
并没有在classes目录下发现我创建的wangxiao.json文件,所以出现空指针异常。解决方法是将wangxiao.json文件存放到resources目录下。
之后再classess目录下会出现wangxiao.json文件。也不会出现空指针异常。
扫描二维码关注公众号,回复:
3003722 查看本文章
将资源文件防止到resources目录下。