У меня есть JSONObject
, который содержит, как показано ниже, и созданный класс Markets
содержит все поля. Я хочу поставить JSONObject
элементов для созданного объекта Markets
.Указанный объект от JSONObject
Пример: Markets markets = new Markets()
, затем положить элементы от JSONObject
до markets
, и я хочу иметь возможность получить markets.getInstrumentName()
. Как я могу это сделать ?
Я стараюсь использовать Gson
, как это Markets markets = gson2.fromJson(jsonObject, Markets.class);
, но есть разные типы, и это неправильный путь.
JSONObject
:
{
"map": {
"netChange": -81.0,
"instrumentType": "INDICES",
"percentageChange": -1.31,
"scalingFactor": 1,
"epic": "IX.D.FTSE.DAILY.IP",
"updateTime": "00:02:48",
"updateTimeUTC": "23:02:48",
"offer": 6095.8,
"instrumentName": "FTSE 100",
"high": 6188.3,
"low": 6080.8,
"streamingPricesAvailable": true,
"marketStatus": "TRADEABLE",
"delayTime": 0,
"expiry": "DFB",
"bid": 6094.8
}
}
Markets
:
class Markets {
private double bid;
private double offer;
private int delayTime;
private String epic;
private String expiry;
private double high;
private double low;
private String instrumentName;
private String instrumentType;
private String marketStatus;
private double netChange;
private double percentageChange;
private int scalingFactor;
private boolean streamingPricesAvailable;
private String updateTime;
private String updateTimeUTC;
//getters and setters
}
Вы читали [фантазии руководство] (https://sites.google.com/site/gson/gson-user-guide)? Здесь полно примеров. –
Я прочитал базовую документацию. – czArek
Вам, вероятно, нужен класс «Карта» с одним полем типа «Рынки» и «Именованная карта», если это ваша трудность. –