導航:首頁 > 編程語言 > 數組轉換json數組java對象

數組轉換json數組java對象

發布時間:2023-05-17 01:19:27

java中把json怎麼轉換成數組

java中把json怎麼轉換成數組的方法:

1、使用原生的解析:
String json = "...";
JSONArray array= new JSONArray(json);
//遍歷數組里的值,得到每個獨立的對象,然後獲取對應的值設置到聲明好的對象中,最終創建對象完成後添加到集合中,如我自己代碼里的片段:
for (int j = 0; j < array.length(); j++) {
obj = array.getJSONObject(j);
Data data = new Data();
data.setThumbnail(obj.getString("thumbnail"));
data.setTitle(obj.getString("title"));
data.setUrl(obj.getString("url"));
mDataList.add(data);
}

2、使用第三方包如Gson,但是這個你得保證你的JSON字元串個z

⑵ java中怎麼把json轉換成對象數組

1、使用原生來的解析:
String json = "...";
JSONArray array= new JSONArray(json);
//遍歷數組里的自值,得到每個獨立的對象,然後獲取對應的值設置到聲明好的對象中,最終創建對象完成後添加到集合中,如我自己代碼里的片段:
for (int j = 0; j < array.length(); j++) {
obj = array.getJSONObject(j);
Data data = new Data();
data.setThumbnail(obj.getString("thumbnail"));
data.setTitle(obj.getString("title"));
data.setUrl(obj.getString("url"));
mDataList.add(data);
}

2、使用第三方包如Gson,但是這個你得保證你的JSON字元串個z

⑶ json數組轉java對象怎麼轉

首先需要commons-beanutils jar包,然後轉bean的方法為:

	/**
*
*@Title:transMap2Bean
*@param:@parammap
*@param:@paramobj
*@return:void
*@Description:Map-->Bean1:利用Introspector,PropertyDescriptor實現Map-->Bean
*@throws
*/
publicstaticvoidtransMap2Bean(Map<String,Object>map,Objectobj){

try{
BeanInfobeanInfo=Introspector.getBeanInfo(obj.getClass());
PropertyDescriptor[]propertyDescriptors=beanInfo.getPropertyDescriptors();

穗洞冊for(PropertyDescriptorproperty:propertyDescriptors){
Stringkey=property.getName();

顫禪if(map.containsKey(key)){
Objectvalue=map.get(key);
//得到property對應的setter方法
Methodsetter=property.getWriteMethod();
setter.invoke(obj,value);
}

}
猜宏
}catch(Exceptione){
System.out.println("transMap2BeanError"+e);
}

return;

}

⑷ java 對象如何轉成json 數組

有具體的例子嗎,我可以幫你

⑸ 如何將java對象數組轉化為JSON樹

//接受一個List
net.sf.json.JSONArray.fromObject(dataList);
//接受一個bean
net.sf.json.JSONObject.fromObject(Objectobject);

利用json-lib,封裝好對象的層級關系後,直接可以用上面兩個方法來專轉換屬json格式數據。

⑹ java 含有數組的字元串怎麼轉化為json對象

1、需要json的相關jar包

2、設置json格式字元串:

String str="{\"student\":[{\"name\":\"leilei\",\"age\":23},{\"name\":\"leilei02\",\"age\":23}]}";

3、建立相應的類:

public class StudentList {
List<Student> student;
public List<Student> getStudent() {
return student;
}

public void setStudent(List<Student> student) {
this.student = student;
}
}

public class Student {
private String name;
private int age;
//private StudentClass studentClass;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}

⑺ 跪求:java中如何將對象數組轉換為json數據格式(在線等)

Json必需的包
commons-httpclient-3.1.jar
commons-lang-2.4.jar
commons-logging-1.1.1.jar
json-lib-2.2.3-jdk13.jar
ezmorph-1.0.6.jar
commons-collections-3.2.1.jar

List list = new ArrayList();
list.add( "first" );
list.add( "second" );
JSONArray jsonArray2 = JSONArray.fromObject( list );

⑻ java對象怎麼轉json數組 跪求啊

JSON-lib這個Java類包用於把bean,map和XML轉換成JSON並能夠把JSON轉回成bean和DynaBean。

下載地址:http://json-lib.sourceforge.net/
還要需要的第3方包:
org.apache.commons(3.2以上版本)
org.apache.oro
net.sf.ezmorph(ezmorph-1.0.4.jar)
nu.xom

1、List
Java代碼
boolean[] boolArray =newboolean[]{true,false,true};
JSONArray jsonArray1 = JSONArray.fromObject( boolArray );
System.out.println( jsonArray1 );
// prints [true,false,true]

List list =newArrayList();
list.add("first");
list.add("second");
JSONArray jsonArray2 = JSONArray.fromObject( list );
System.out.println( jsonArray2 );
// prints ["first","second"]

JSONArray jsonArray3 = JSONArray.fromObject("['json','is','easy']");
System.out.println( jsonArray3 );
// prints ["json","is","easy"]

2、Map
Java代碼
Map map =newHashMap();
map.put("name","json");
map.put("bool", Boolean.TRUE );

map.put("int",newInteger(1) );
map.put("arr",newString[]{"a","b"} );
map.put("func","function(i){ return this.arr[i]; }");
JSONObject json = JSONObject.fromObject( map );
System.out.println( json );
//{"func":function(i){ return this.arr[i]; },"arr":["a","b"],"int":1,"name":"json","bool":true}

3、BEAN
Java代碼
/**
* Bean.java
private String name = "json";
private int pojoId = 1;
private char[] ptions = new char[]{'a','f'};
private String func1 = "function(i){ return this.options[i]; }";
private JSONFunction func2 = new JSONFunction(new String[]{"i"},"return this.options[i];");
*/
JSONObject jsonObject = JSONObject.fromObject(newJsonBean() );
System.out.println( jsonObject );
//{"func1":function(i){ return this.options[i]; },"pojoId":1,"name":"json","options":["a","f"],"func2":function(i){ return this.options[i]; }}

4、BEANS
Java代碼
/**
* private int row ;
private int col ;
private String value ;
*
*/
List list =newArrayList();
JsonBean2 jb1 =newJsonBean2();
jb1.setCol(1);
jb1.setRow(1);
jb1.setValue("xx");

JsonBean2 jb2 =newJsonBean2();
jb2.setCol(2);
jb2.setRow(2);
jb2.setValue("");

list.add(jb1);
list.add(jb2);

JSONArray ja = JSONArray.fromObject(list);
System.out.println( ja.toString() );
//[{"value":"xx","row":1,"col":1},{"value":"","row":2,"col":2}]

5、String to bean
Java代碼
String json ="{name=\"json\",bool:true,int:1,double:2.2,func:function(a){ return a; },array:[1,2]}";
JSONObject jsonObject = JSONObject.fromString(json);
Object bean = JSONObject.toBean( jsonObject );
assertEquals( jsonObject.get("name"), PropertyUtils.getProperty( bean,"name") );
assertEquals( jsonObject.get("bool"), PropertyUtils.getProperty( bean,"bool") );
assertEquals( jsonObject.get("int"), PropertyUtils.getProperty( bean,"int") );
assertEquals( jsonObject.get("double"), PropertyUtils.getProperty( bean,"double") );
assertEquals( jsonObject.get("func"), PropertyUtils.getProperty( bean,"func") );
List expected = JSONArray.toList( jsonObject.getJSONArray("array") );
assertEquals( expected, (List) PropertyUtils.getProperty( bean,"array") );

Java代碼
String json ="{\"value\":\"xx\",\"row\":1,\"col\":1}";
JSONObject jsonObject = JSONObject.fromString(json);
JsonBean2 bean = (JsonBean2) JSONObject.toBean( jsonObject, JsonBean2.class);
assertEquals( jsonObject.get("col"),newInteger( bean.getCol()) );
assertEquals( jsonObject.get("row"),newInteger( bean.getRow() ) );
assertEquals( jsonObject.get("value"), bean.getValue() );

6 json to xml
1)
JSONObject json = new JSONObject( true );
String xml = XMLSerializer.write( json );

<o class="object" null="true">

2)
JSONObject json = JSONObject.fromObject("{\"name\":\"json\",\"bool\":true,\"int\":1}");
String xml = XMLSerializer.write( json );
<o class="object">
<name type="string">json</name>
<bool type="boolean">true</bool>
<int type="number">1</int>
</o>
<o class="object">
<name type="string">json</name>
<bool type="boolean">true</bool>
<int type="number">1</int>
</o>
3)
JSONArray json = JSONArray.fromObject("[1,2,3]");
String xml = XMLSerializer.write( json );
<a class="array">
<e type="number">1</e>
<e type="number">2</e>
<e type="number">3</e>
</a>

7 、xml to json
<a class="array">
<e type="function" params="i,j">
return matrix[i][j];
</e>
</a>
<a class="array">
<e type="function" params="i,j">
return matrix[i][j];
</e>
</a>

JSONArray json = (JSONArray) XMLSerializer.read( xml );
System.out.println( json );
// prints [function(i,j){ return matrix[i][j]; }]

⑼ 前端js把json字元串轉json對象 java對象轉json對象命令

最近在逛編程問題解答的時候,看到這樣的提問:如何將一個JSON數組類型的字元串轉換為JSON數組,然後遍歷數組取出JSON對象,最後在JS中取出裡面的屬性。在這里給同樣有疑問的朋友做下解答,

首先我們追本溯源問一下,JSON究竟是什麼東西?為什麼JSON就是易於數據交換?本文將從以下幾個方面去理解JSON:

首先是對「JSON是一種輕量的數據交換格式」的理解;

然後來看經常被混為一談的JSON和JS對象的區別;

json字元串轉換成json數組並遍歷屬性值;

什麼是JSON? JSON是一種輕量級的數據交換格式。

如果沒有去過JSON的官方介紹可以去一下這里,官方介紹已經很清楚地表述了JSON是什麼,我將JSON是什麼提煉成以下幾個方面:

1. 一種數據格式

什麼是格式?就是規范你的數據要怎麼表示,舉個栗子,有個人叫「二百六」,身高「160cm」,體重「60kg」,現在你要將這個人的這些信息傳給別人或者別的什麼東西,你有很多種選擇:

以上所有選擇,傳遞的數據是一樣的,但是你可以看到形式是可以各式各樣的,這就是各種不同格式化後的數據,JSON是其中一種表示方式。

2. 基於文本的數據格式

JSON是基於文本的數據格式,相對於基於二進制的數據,所以JSON在傳遞的喚老時候是傳啟宏遞符合JSON這種格式(至於JSON的格式是什麼我們第二部分再說)的字元串,我們常會稱為「JSON字元串」。

3. 輕量級的數據格式

在JSON之前,有一個數據格式叫xml,現在還是廣泛在用,但是JSON更加輕量,如xml需要用到很多標簽,像上面的例子中,你可以明顯看到xml格式的數據中標簽本身占據了很多空間,而JSON比較輕量,即相同數據,以JSON的格式占據的帶寬更小,這在有大量數據請求和傳遞的情況下是有明顯優勢的。

4. 被廣泛地用於數據交換

輕量已經是一個用於數據交換的優勢了,但更重要的JSON是易於閱讀、編寫和機器解析的,即這個JSON對人和機器都是友好的,而且又輕,獨立於語言(因為是基於文本的),所以JSON被廣泛用於數據交換。

以前端JS進行ajax的POST請求為例,後端PHP處理請求為例:

可以看到,相同的數據在這里有3種不同的表現形式,分別是前端的JS對象、傳輸的JSON字元串、後端的PHP對象,JS對象和PHP對象明顯不是一個東西,但是由於大家用的都是JSON來傳遞數據,大家都能理解這種數據格式,都能把JSON這種數據格式很容易地轉化為自己能理解的數據結構,這就方便啦,在其他各種語言環境中交換數據都是如此。

經常被混為一談的JSON和JS對象很多時候都聽到「JSON是JS的一個子集」這句話,而且這句話我曾經也一直這么認為,每個符合JSON格式的字元串你解析成js都是可以的,直到後來發現了一個奇奇怪怪的東西…

1. 兩個本質不同的東西為什麼那麼密切

JSON和JS對象本質上完全不是同一個東西,就像「斑馬線」和「斑馬」,「斑馬線」基於「斑馬」身上的條紋來呈現和命名,但是斑馬是活的,斑馬線是非生物。

同樣,」JSON」全名」JavaScript Object Notation」,所以它的格式(語法)是基於JS的,但它就是一種格式,而JS對象是一個實例,是存在於內存的一個東西。

說句玩笑話,如果JSON是基於PHP的,可能就叫PON了,形式可能就是這樣的了[『propertyOne』 => 『foo』, 『propertyTwo』 => 42,],如果這樣,那麼JSON可能現在是和PHP比較密切了。

此外,JSON是可以傳輸的,因為它是文本格式,但是JS對象是沒辦法傳輸的,在語法上,JSON也會更加嚴格,但是JS對象就很鬆了。

那麼兩個不同的東西為什麼那麼密切,因為JSON畢竟是從JS中演變出來的,語法相近。

2. JSON格式別JS對象語法表現上嚴格在哪

先就以「鍵值對為表現的對象」形式上,對比下兩者的不同,至於JSON還能以怎樣的形式表現,對比完後再羅列。

可以看到,相對於JS對象,JSON的格式更嚴格,所以和旁升大部分寫的JS對象是不符合JSON的格式的。

json字元串轉換成json數組並遍歷屬性值方式一:使用Iterator迭代器遍歷取值

方法二:使用for循環

⑽ json數組轉java對象怎麼轉

看別人的:
/**
* 從一個JSON數組得到一個java對象數組,形如:
* [{"id" : idValue, "name" : nameValue}, {"id" : idValue, "name" : nameValue}, ...]
* @param object
* @param clazz
* @return
*/
public static Object[] getDTOArray(String jsonString, Class clazz){
setDataFormat2JAVA();
JSONArray array = JSONArray.fromObject(jsonString);
Object[] obj = new Object[array.size()];
for(int i = 0; i < array.size(); i++){
JSONObject jsonObject = array.getJSONObject(i);
obj[i] = JSONObject.toBean(jsonObject, clazz);
}
return obj;
}

閱讀全文

與數組轉換json數組java對象相關的資料

熱點內容
炫酷字體APP下載的文件在哪裡 瀏覽:668
廊坊哪裡有少兒編程機構 瀏覽:312
cad新文件能找回來嗎 瀏覽:951
導出手機qq文件到u盤 瀏覽:456
電腦如何打開ppt文件怎麼打開方式 瀏覽:782
魅族鎖定區文件夾 瀏覽:357
刻字cnc怎麼編程 瀏覽:182
學校的網路拓撲結構圖 瀏覽:784
收集100個pdf文件里關鍵詞 瀏覽:594
蘋果關閉4g網路設置 瀏覽:289
如何監測資料庫 瀏覽:967
拷貝過來的pdf文件 瀏覽:751
抖音小店的訪客數據怎麼看 瀏覽:670
怎麼把c語言編程的字元向下移動 瀏覽:786
sql刪除文件組代碼 瀏覽:978
安卓post請求多重json 瀏覽:776
微信消除數據怎麼恢復 瀏覽:918
小米刷機顯示系統找不到指定文件 瀏覽:528
蘋果手機小風扇圖app叫什麼 瀏覽:292
繁體中文輸入工具 瀏覽:916

友情鏈接