UserAccountBalance balance = new UserAccountBalance();

JSONObject jsonObject = new JSONObject('{"arg":{"channel":"balance_and_position","uid":"77982378738415879"},"data":[{"pTime":"1597026383085","eventType":"snapshot","balData":[{"ccy":"BTC","cashBal":"1","uTime":"1597026383085"}],"posData":[{"posId":"1111111111","tradeId":"2","instId":"BTC-USD-191018","instType":"FUTURES","mgnMode":"cross","posSide":"long","pos":"10","ccy":"BTC","posCcy":"","avgPx":"3320","uTime":"1597026383085"}],"trades":[{"instId":"BTC-USD-191018","tradeId":"2"}]}]}'); JSONArray dataArray = jsonObject.getJSONArray("data");

if (dataArray.length() > 0) { JSONObject dataObject = dataArray.getJSONObject(0);

if (dataObject.has("balData")) {
    JSONArray balDataArray = dataObject.getJSONArray("balData");

    if (balDataArray.length() > 0) {
        JSONObject balDataObject = balDataArray.getJSONObject(0);
        balance.setBalData(new BigDecimal(balDataObject.getString("cashBal")));
        balance.setUtime(balDataObject.getString("uTime"));
    }
}

if (dataObject.has("posData")) {
    JSONArray posDataArray = dataObject.getJSONArray("posData");

    if (posDataArray.length() > 0) {
        JSONObject posDataObject = posDataArray.getJSONObject(0);
        balance.setEventType(dataObject.getString("eventType"));
        balance.setTradeId(posDataObject.getString("tradeId"));
        balance.setInstId(posDataObject.getString("instId"));
    }
}

}

Java 解析 JSON 数据到 UserAccountBalance 对象

原文地址: https://www.cveoy.top/t/topic/twe 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录