1,首先导入fastjson相关依赖jar包(基于maven环境下)
<dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.41</version> </dependency>
以下是js文件格及所在文件目录![]()
通过js文件可以看出内容一般存json数组所以只需要把文件内容读出来,转成json数组获取我们想要的内容即可代码如下@Test public void getArae() throws Exception { //项目打包后(jar)有些路径是被隐蔽了,通过this.getClass().getClassLoader().getResource("文件名").getPath();获得文件在打包后项目中的绝度路径 String fileName = this.getClass().getClassLoader().getResource("CityJson.js").getPath();//获取文件路径 InputStreamReader inputStreamReader = new InputStreamReader(new FileInputStream(fileName),"UTF-8"); BufferedReader br = new BufferedReader(inputStreamReader); String s = null, ws = null; StringBuffer jsonBuffer = new StringBuffer(); JSONObject jsonObject; JSONArray jsonArray; //读取到文件内json内容 while ((s = br.readLine())!= null ){ jsonBuffer.append(s); } br.close(); //因为文件内容直接是一个json数组,就可以直接用JSONArray对象来装 jsonArray =(JSONArray) JSONArray.parse(jsonBuffer.toString().substring(8,jsonBuffer.length())); for (int i=0; i<jsonArray.size(); i++){ jsonObject =(JSONObject) jsonArray.get(i); System.out.print(jsonObject.getString("province")); System.out.print(jsonObject.getString("name")); System.out.print(jsonObject.getString("type")); } } }