2011-06-18 17 views
1

次のjsonデータを逆シリアル化したいhttps://mtgox.com/code/data/getDepth.php。私は間違いを続ける。以下は私のコードです。多次元配列を逆シリアル化するGSON

Gson gson = new Gson(); 
String json = readHTTPS(new URL("https://mtgox.com/code/data/getDepth.php")); 
AskBids askBids = gson.fromJson(json, AskBids.class); 

のような私のAskBidsクラスを見て:期待したオブジェクトが見つかりました::

public class AskBids { 

private String [] [] asks; 
private String [] [] bids; 

public AskBids(){} 
} 

エラーがcom.google.gson.JsonParseExceptionがされますされ

任意のアイデア "尋ねますか"?ありがとう

答えて

3

元の質問にリンクされているJSONには、2,800個以上のJSONトークン、要素名、および値が含まれています。ここでは、まったく同じ構造を維持しているそのサンプルの小さなセクションです。言っ

{ 
    "asks": [ 
     [ 
      18.22, 
      15.362 
     ], 
     [ 
      25.4682, 
      20 
     ] 
    ], 
    "bids": [ 
     [ 
      18.06, 
      50 
     ], 
     [ 
      18.0099, 
      32.64 
     ] 
    ] 
} 

は、私は、元のJSONと私は上記の貼り付け、そして期待通りのコードがエラーなしで走った短いバージョンの両方を使用して、元の質問からデシリアライズコードをコピー&ペースト。

エラーメッセージExpecting object found: "asks"に基づいて、私はreadHTTPS(URL)方法は、それがJSONの開口{含まないという点で正しい結果を返すされていないと思われます。これが問題だが何らかの理由でreadHTTPS(URL)を修正できない場合は、欠落している文字を連結するだけで、出力を常に修正することができます。

関連する問題