2014-12-02 81 views
1

我有這個問題,即我不斷收到這個奇怪的錯誤,當我在命令行中運行這個簡單的程序繼續在位置1收到此錯誤「意外字符()」。

這裏的JSON文件

{"count":"21740"}

下面的代碼

import java.io.FileNotFoundException; 
import java.io.FileReader; 
import java.io.IOException; 
import java.util.Iterator; 

import org.json.simple.JSONArray; 
import org.json.simple.JSONObject; 
import org.json.simple.parser.JSONParser; 
import org.json.simple.parser.ParseException; 

public class EarthQuake { 

private static final String filePath = "data.json"; 

public static void main(String[] args) { 

    try { 
     // read the json file 
     FileReader reader = new FileReader(filePath); 

     JSONParser jsonParser = new JSONParser(); 
     JSONObject jsonObject = (JSONObject) jsonParser.parse(reader); 

     // get a String from the JSON object 
     String count = (String) jsonObject.get("count"); 
     System.out.println("The count is: " + count); 


    } catch (FileNotFoundException ex) { 
     ex.printStackTrace(); 
    } catch (IOException ex) { 
     ex.printStackTrace(); 
    } catch (ParseException ex) { 
     ex.printStackTrace(); 
    } catch (NullPointerException ex) { 
     ex.printStackTrace(); 
    } 

} 

} 

但我總是得到這個錯誤

"C:\>java -classpath .;json-simple-1.1.1.jar test 
Unexpected character () at position 1. 
     at org.json.simple.parser.Yylex.yylex(Yylex.java:610) 
     at org.json.simple.parser.JSONParser.nextToken(JSONParser.java:269) 
     at org.json.simple.parser.JSONParser.parse(JSONParser.java:118) 
     at org.json.simple.parser.JSONParser.parse(JSONParser.java:92) 
     at test.main(test.java:22)" 

我驗證過的http://jsonlint.com/

JSON文件,我不知道我做了什麼錯在這裏,請大家幫忙!

+0

在文件的開頭是否有一些不可見的字符? – Jesper 2014-12-02 10:25:30

+0

不,這一切都在文件中 – dale 2014-12-02 10:28:25

+2

請將文件上傳到公共文件共享服務中,以便我們檢查文件是否有問題。我知道你說沒關係,但誰知道。 – Pimgd 2014-12-02 10:32:32

回答

1

我創建了一個文件並在該文件中粘貼{"count":"21740"}並將其命名爲test.json。我能夠在沒有錯誤的情況下運行代碼。

但是爲了調試你的問題,你可以運行你的代碼,將json字符串直接傳遞給解析器,如下所示;

JSONObject jsonObject = (JSONObject) jsonParser.parse("{\"count\":\"21740\"}"); 
+0

很酷,這工作。那麼,我的原始傳入FileReader對象會發生什麼? – dale 2014-12-02 12:26:35

+0

我建議創建一個新文件並輸入值並保存爲json。看看它是否有效。 – 2014-12-02 20:39:40

+0

好的,我會盡力的,謝謝你 – dale 2014-12-04 04:42:21

相關問題