17

デモ プロジェクトで呼び出しにレトロフィット ライブラリを使用しています。

次のエラーを受け取りました。

java.lang.NumberFormatException: int が必要ですが、行 1 列 8454 パス $.result.results.ads[2].acres で 0.6 でした

これはGSONによるものだと理解しています。

巻き込まれている JSON を示します。

   {  
       "ad_id":739580087654,
       "property_type":"site",
       "house_type":"",
       "selling_type":"private-treaty",
       "price_type":"",
       "agreed":0,
       "priority":2,
       "description":"Beautiful elevated 0.6 acre site - zoned residential - and within easy walk to this popular and scenic coastal village\r\n\r\n\r\nthe site area is zoned residential ( i.e. can be constructed on for residential home) and has beautiful coastal views\r\n\r\nSpiddal is an exceptionally popular location , just 8 miles west of Galway City but the area has not been over developed.\r\n\r\nAll services and family amenities are location in the village centre.\r\n\r\n",
       "price":135000,
       "bedrooms":null,
       "bathrooms":null,
       "tax_section":"0",
       "square_metres":0,
       "acres":0.6,   <----------------------TRIPPING UP HERE
       "features":[  
          "Zoned residential",
          "within easy walk of coastal village of Spiddal",
          "with coastal views"
       ],
       "ber_rating":"",
       "ber_code":"",
       "ber_epi":0,             
       "city":"",
       "general_area":"Connemara",
       "postcode":null,
       "latlon_accuracy":1,
       "main_email":"",
       "cc_email":"",
       "auction_address":"",
       "start_date":1384425002,
       "listing_date":1384425002,
       "agreed_date":0,
       "auction_date":0,
       "tags":1
    },

私は Retrofit の経験があまりないので、このプロジェクトを学び、統合することにしました。

誰か提案はありますか?

送信される JSON を制御することはできません。

4

2 に答える 2

29

;の代わりにfloatorを使用してみてください。は整数ではなく、小数です。Java は小数を;として自動的に解釈することに注意してください。フロートの例はです。doubleint0.6doubles0.6f

于 2016-01-30T15:46:34.220 に答える
2

intこれは、パーサーが取得した実際の値が であるのに対し、パーサーが を期待しているためfloatです。できることは、モデルでその値のタイプを から に変更することintですfloat

これにより、その値を使用しているコードで問題が発生する可能性があります。その float 値を整数にキャストすることで解決できます。

于 2016-01-29T23:10:26.020 に答える