2016-01-29 1 views
3

Я использую модифицированную библиотеку для своих вызовов в демонстрационном проекте.java.lang.NumberFormatException: Ожидаемый int, но был 0,6 в строке 1 столбец 8454

я получил следующее сообщение об ошибке:

java.lang.NumberFormatException: Expected an int but was 0.6 at line 1 column 8454 path $.result.results.ads[2].acres

Я под стендом, что это до 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 
    }, 

Я не то, что опыт работы с Модернизированный так решил изучить и интегрировать в этот проект.

У кого-нибудь есть предложения?

У меня нет никакого контроля над отправленным JSON.

+2

Используйте 'float' вместо' int'. – winterfox

+0

в моем объекте ответа? Это не вызовет проблемы, когда есть ints? –

+0

В действительном (java) коде. – winterfox

ответ

6

Попробуйте использовать float или double вместо int; 0.6 не является целым числом, оно является десятичным. Обратите внимание, что java автоматически интерпретирует десятичные знаки как doubles; примером поплавка будет 0.6f.

1

Это потому, что парсер ожидает int, тогда как фактическое значение было float. Что вы можете сделать, измените этот тип значения от int до float в вашей модели.

Это может вызвать проблемы в коде, где бы вы ни использовали это значение. Вы можете решить эту проблему, добавив значение float в целое число.

Смежные вопросы