簡體   English   中英

從javax.json.JsonArray轉換為org.json.JSONArray

[英]Converting from javax.json.JsonArray to org.json.JSONArray

是否可以從較新的EJB JSON庫轉換為較舊的org.json而不需要依賴org.json.simple或GSON?

在以下情況下,“按鈕”是一個填充的JsonArray,我正嘗試將其復制到JSONArray中以獲取舊代碼。 但是,從字符串值初始化JSONArray始終失敗,並顯示“ JSONObject文本必須以'{'開頭”,因為引號被視為第一個字符,而不是花括號。

JSONArray newButtons = new JSONArray(); for (int i = 0; i < buttons.size(); i++) { JsonString button = buttons.getJsonString(i); newButtons.put(new JSONArray(button.toString())); } return new JSONArray(newButtons);

似乎沒有可以從javax.json庫中的toString()值從字符串構造函數初始化的org.json對象。 我設法將數據從org.json結構移動到javax.json結構,但反之亦然。 org.json庫是否太不靈活而無法做到這一點?

我還沒有嘗試過,但是我相信下面的應該有用。

JSONArray newButtons = new JSONArray();
for (int i = 0; i < buttons.size(); i++) {
    JsonObject button = buttons.getJsonObject(i);
    newButtons.put(new org.json.JSONObject(button.toString()));
}
return newButtons;

在下面的代碼行中,您首先獲取索引為'i'的對象,然后使用該對象制作一個JSON字符串。 您的原始代碼寧願返回元素“ i”作為值而不是對象。

JsonString button = buttons.getJsonObject(i).toString();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM