2017-08-08 12 views
0

このエラーで多くのトピックが見つかりましたが、解決策が見つかりませんでした。

テキストファイルからJavaオブジェクトへのjsonの解析に問題があります。

私は、ファイルを読んで、私はここに、オブジェクトにそれらを変換するには、コードは次のとおりです。

private ArrayList<Game> gameList; 
for (File file : gamesFolder.listFiles()) { 
      BufferedReader br = new BufferedReader(new FileReader(file)); 
      //Line below is where it crash 
      Game game = new Gson().fromJson(br, Game.class); 
      this.gameList.add(game); 
} 

私のゲームクラス:

public class Game { 

    private Integer id; 
    private String game; 
    private List<String> items; 

    public Integer getId() { return id; } 
    public void setId(Integer id) { this.id = id; } 

    public String getGame() { return game; } 
    public void setGame(String game) { this.game = game; } 

    public List<String> getItems() { return items; } 
    public void setItems(List<String> items) { this.items = items; } 
} 

、最終的には私のJSON:

{ 
    "id": 730, 
    "game": "Counter-Strike: Global Offencive", 
    "items": [ 
    "Clé de caisse spectrale", 
    "Caisse spectrale", 
    "AWP | Asiimov" 
    ] 
} 

助けてくれてありがとう!

+0

このコードをデバッグしますが、 'file'が実際に上記のjsonを含むファイルであることを確認してください。' System.out.println(file); 'を追加してください。 –

+0

はいファイルはいいですし、私のコンストラクタでは、私はそれを示していないhavn – tontonfranki

答えて

0

私は最終的に答えを見つけました!

問題は、私がファイル内のjsonを読むことができるときでした。 UTF-8ではなく、出力が奇妙でした。

これを解決するには私はバッファラインを変更しました。

BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(file), "UTF8")); 
Game game = new Gson().fromJson(br, Game.class); 

Thnx!

関連する問題