【发布时间】:2016-04-07 10:58:31
【问题描述】:
我需要将其解析为 JsonArray 而不是对象 但它似乎工作正常。
我的输出是 ["{"TransactionVolume":"34","TransactionitemID":"2"}"]
我需要它是 [{"TransactionVolume":"34","TransactionitemID":"2"}]
这是我的代码的一部分
public class TransactionItem {
public String TransactionitemID;
public String TransactionVolume;
public String getTransactionVolume() {
return TransactionVolume;
}
public void setTransactionVolume(String transactionVolume) {
TransactionVolume = transactionVolume;
}
public String getTransactionitemID() {
return TransactionitemID;
}
public void setTransactionitemID(String transactionitemID) {
TransactionitemID = transactionitemID;
}
}
TransactionItem transactionItem = new TransactionItem();
transactionItem.setTransactionitemID(article.toString());
transactionItem.setTransactionVolume(volume.toString());
String transitemjson = gson.toJson(transactionItem);
JSONArray ja = new JSONArray();
ja.put(transitemjson);
String test = ja.toString().replaceAll("\\\\\"", "\"");
Ja 似乎是正确的输出位置
["{\"TransactionVolume\":\"34\",\"TransactionitemID\":\"2\"}"]
所以我尝试将所有 \ 替换为 " 但仍然是 " 在乞求和结束时。
修剪字符串似乎不是一个好主意,但它可以工作。有没有其他方法可以做到这一点?
编辑
这让我达到了目标!
ArrayList<TransactionItem> Transactionlist = new ArrayList<>();
for (int i=0; i < CompleteArticle.size(); i++) {
String id = CompleteArticle.get(i);
String Volume = CompleteVolume.get(i);
TransactionItem transactionItem = new TransactionItem();
transactionItem.setTransactionitemID(id);
transactionItem.setTransactionVolume(Volume);
//transactionitems.transactionitems.add(transactionItem);
Transactionlist.add(transactionItem);
}
JsonElement transitemjson = gson.toJsonTree(transactionItems);
输出:
[{"TransactionVolume":"1","TransactionitemID":"5"},{"TransactionVolume":"3","TransactionitemID":"3"}]
【问题讨论】:
标签: java android json parsing multipartentity