如何在android中将arraylist的对象转换为JsonObject?
我是Android的初学者。我需要知道 1) 如何将数组的对象转换为JsonObject。我需要这种格式如何在android中将arraylist的对象转换为JsonObject?,android,json,android-volley,Android,Json,Android Volley,我是Android的初学者。我需要知道 1) 如何将数组的对象转换为JsonObject。我需要这种格式 {"House_id":"1" "Date":"12.12.2016" [{"Name":"RickBald","email":"xyz@gmail.com","address":"homeaddress1"},{"Name":"EshaRan","email":"ghj@gmail.com","address":"homeaddress2"},{"Name":"Hansa Bella",
{"House_id":"1"
"Date":"12.12.2016"
[{"Name":"RickBald","email":"xyz@gmail.com","address":"homeaddress1"},{"Name":"EshaRan","email":"ghj@gmail.com","address":"homeaddress2"},{"Name":"Hansa Bella","email":"sas@gmail.com","address":"homeaddress3"}...]}
2) 如果我想发送这个`jsonArray,那么截击中的请求应该是什么
提前感谢您可以使用它来转换Java模型的JSON表示形式。您可以使用GSON lib和Jackson对象映射器
请参见以下GSON代码:
Gson gson = new Gson();
T是下面方法getJSONString中的泛型类(DTO类)
String convertedJson = getJSONString(DTO)
public String getJSONString(T dto){
return gson.toJson(dto);
}
假设您的响应字符串或JSON字符串
JSONObject json = new JSONObject(strResponse);
Json.putString("Name","RickBald")
将所有值放入jsonObject
中,如Json.putString(“Name”,“RickBald”)代码>
并将其转换为jsonArray
JSONArray jsonarr = new JSONArray();
jsonarr.put(json);
输出:
[{"Name":"RickBald","email":"xyz@gmail.com","address":"homeaddress1"},{"Name":"EshaRan","email":"ghj@gmail.com","address":"homeaddress2"},{"Name":"Hansa Bella","email":"sas@gmail.com","address":"homeaddress3"}...]
首先声明数组:
String[] name ={"yousuf" , "Mohammed" , "Ali" , "Hamood" , "Alex"};
String[] emails = {"yousuf@dd" , "Mohammed@dd" , "Ali@dd" , "Hamood@dd" , "Alex@dd"};
任何包含数据的数组
然后创建JSONArray
JSONArray array = new JSONArray();
然后进行循环以将对象添加到阵列:
for (int i =0; (i < name.length) && (i < emails.length) ; i++ ) {
JSONObject object = new JSONObject();
try {
object.put("name", name[i]);
object.put("email" , emails[i]);
array.put(object);
}catch (JSONException e) {
e.printStackTrace();
}
}
您将得到如下结果:
[{"name":"yousuf","email":"yousuf@dd"},{"name":"Mohammed","email":"Mohammed@dd"},{"name":"Ali","email":"Ali@dd"},{"name":"Hamood","email":"Hamood@dd"},{"name":"Alex","email":"Alex@dd"}]
但您可以通过以下方式对其进行格式化:
您将可以很好地查看数据:
以下是全部代码:
public void getDataInJsonFormat (){
String[] name ={"yousuf" , "Mohammed" , "Ali" , "Hamood" , "Alex"};
String[] emails = {"yousuf@dd" , "Mohammed@dd" , "Ali@dd" , "Hamood@dd" , "Alex@dd"};
JSONArray array = new JSONArray();
for (int i =0; (i < name.length) && (i < emails.length) ; i++ ) {
JSONObject object = new JSONObject();
try {
object.put("name", name[i]);
object.put("email" , emails[i]);
array.put(object);
}catch (JSONException e) {
e.printStackTrace();
}
}
Log.d("Json is " , array.toString());
}
public void getDataInJsonFormat(){
String[]name={“优素福”、“穆罕默德”、“阿里”、“哈穆德”、“亚历克斯”};
字符串[]电子邮件={”yousuf@dd" , "Mohammed@dd" , "Ali@dd" , "Hamood@dd" , "Alex@dd"};
JSONArray数组=新的JSONArray();
对于(inti=0;(i
你能用代码显示你的对象吗?学习并发布准备对象数组的代码。谢谢@Shashanth@trunghieu我从这里得到了正确的代码。谢谢json.put(“Name”,“RickBald”)
notjson.putString(“Name”,“RickBald”)
public void getDataInJsonFormat (){
String[] name ={"yousuf" , "Mohammed" , "Ali" , "Hamood" , "Alex"};
String[] emails = {"yousuf@dd" , "Mohammed@dd" , "Ali@dd" , "Hamood@dd" , "Alex@dd"};
JSONArray array = new JSONArray();
for (int i =0; (i < name.length) && (i < emails.length) ; i++ ) {
JSONObject object = new JSONObject();
try {
object.put("name", name[i]);
object.put("email" , emails[i]);
array.put(object);
}catch (JSONException e) {
e.printStackTrace();
}
}
Log.d("Json is " , array.toString());
}