導航:首頁 > 編程語言 > java拼json

java拼json

發布時間:2024-08-03 08:41:02

1. java怎樣進行json字元串拼接

StringBuffer

利用StringBuffer來拼接和截取,如果是拼接字元串強烈建議使用StringBuffer。這樣可以防止內存泄露,否則大量用Str=str1+str2,會造成內存溢出用法如圖。

2. java如何返回json格式

例如:
Student st1 = new Student(1, "dg", 18, new Date());
Student st2 = new Student(2, "dg", 18, new Date());
Student st3 = new Student(3, "dg", 18, new Date());
Student st4 = new Student(4, "dg", 18, new Date());
Student st5 = new Student(5, "dg", 18, new Date());
List li = new ArrayList();
JSONObject JO1 = new JSONObject(st1);
JSONObject JO2 = new JSONObject(st2);
JSONObject JO3 = new JSONObject(st3);
JSONObject JO4 = new JSONObject(st4);
JSONObject JO5 = new JSONObject(st5);
li.add(JO1);
li.add(JO2);
li.add(JO3);
li.add(JO4);
li.add(JO5);
JSONArray Ja = new JSONArray(li);
Map ma = new HashMap();
ma.put("Result", "OK");
ma.put("Records", Ja);
JSONObject js = new JSONObject(ma);
out.print(js);

返回結果:

{"Result":"OK","Records":[{"recordDate":"Fri Dec 16 17:54:39 CST 2011","name":"dg","age":18,"personId":1},{"recordDate":"Fri Dec 16 17:54:39 CST 2011","name":"dg","age":18,"personId":2},{"recordDate":"Fri Dec 16 17:54:39 CST 2011","name":"dg","age":18,"personId":3},{"recordDate":"Fri Dec 16 17:54:39 CST 2011","name":"dg","age":18,"personId":4},{"recordDate":"Fri Dec 16 17:54:39 CST 2011","name":"dg","age":18,"personId":5}]}

3. 鏁版嵁搴撲腑鏁版嵁鍋跺皵鏈夋崲琛岀︺佸洖杞︾︼紝鍦╦ava閲屽彇鍑烘暟鎹鎷糐SON鏍煎紡瀛楃︿覆鐨勬椂鍊欒佸嚭闂棰樸

public static String replaceBlank(String str) {
String dest = "";
if (str!=null) {
Pattern p = Pattern.compile("\\s*|\t|\r|\n");
Matcher m = p.matcher(str);
dest = m.replaceAll("");
}
return dest;
}

鍘諱竴涓嬫崲琛 鍥炶濺絎 鍐嶆嫾鎺

4. java 怎樣進行json字元串拼接

一般都是用json解析包去做json的轉換的,例如用Gson,可以把一個對象轉為json字元串,也可以逆向把json字元串轉為對象。

例如:

Map<String,Object>map=newHashMap<String,Object>();
map.put("key01","value01");
map.put("key02","value02");
Stringjson=newGson().toJson(map);
//則json為{"key01":"value01","key02":"value02"}

如果要用手動拼接的話,就拼接成json格式的字元串就可以了,注意"要做轉義

例如:

Stringvalue01="value01";
intvalue02=123;
Stringjson="{"key01":""+value01+"","key02":"+value02+"}";
//列印結果為{"key01":"value01","key02":123}
//注意int值不需要加引號

5. 求java合並json數據的代碼

我想了一下,但是得有一個前提,就是第一個json數組的size必須和第二個json數組的size相同,並且一一對應,否則將造成數組溢出。

如果是基於上面這個前提,那麼實現的方法就簡單了。

操作json對象,其實標準的方法是將實體類轉換成json後再操作,我這里的話為了便捷直接使用谷歌的Gson來創建JsonObject了,其他的json依賴還有阿里巴巴的FastJson等等,看你平時用什麼習慣。

引入Gson依賴:

<dependency>
<groupId>com.google.code.gson</groupId>
<artifactId>gson</artifactId>
<version>2.8.0</version>
</dependency>

實現代碼:

public class Main {
public static void main(String[] args) {
JsonArray jsonArray1 = new JsonArray();
JsonObject json11 = new JsonObject();
json11.addProperty("數據1", "0000");
json11.addProperty("數據2", "1111");
JsonObject json12 = new JsonObject();
json12.addProperty("數據1", "0000");
json12.addProperty("數據2", "1111");
JsonObject json13 = new JsonObject();
json13.addProperty("數據1", "0000");
json13.addProperty("數據2", "1111");
jsonArray1.add(json11);
jsonArray1.add(json12);
jsonArray1.add(json13);
System.out.println(jsonArray1);

JsonArray jsonArray2 = new JsonArray();
JsonObject json21 = new JsonObject();
json21.addProperty("數據3", "6666");
JsonObject json22 = new JsonObject();
json22.addProperty("數據3", "6666");
JsonObject json23 = new JsonObject();
json23.addProperty("數據3", "6666");
jsonArray2.add(json21);
jsonArray2.add(json22);
jsonArray2.add(json23);
System.out.println(jsonArray2);

//遍歷json數組,按位取出對象
for (int i = 0; i < jsonArray1.size(); i++) {
JsonObject json1 = jsonArray1.get(i).getAsJsonObject();
JsonObject json3 = jsonArray2.get(i).getAsJsonObject();
//遍歷數據3內容,通過Entry獲取數據3的key和value,並合並到數據1中
for (Map.Entry<String, JsonElement> item : json3.entrySet()) {
json1.addProperty(item.getKey(), item.getValue().getAsString());
}
}
System.out.println(jsonArray1);
}
}

整體思路為:遍歷兩個json數組,按位進行合並操作。合並時,遍歷數據3的jsonObject,獲取其key和value,並將其合並到數據1中即可。

運行結果:

6. java中,怎麼把兩個jsonObject合並成一個

方法為,把兩個拼裝好的JSON串合並成一個新的JSON,兩個JSON相同的key值情況下只保存一個,後放入的JSON串對應key的Value值會覆蓋先放入的。

具體操作設置方法為

import net.sf.json.JSONObject;

public class JSONCombine

{

public static void main(String[] args)

{

JSONObject jsonOne = new JSONObject();

JSONObject jsonTwo = new JSONObject();

jsonOne.put("name", "kewen");

jsonOne.put("age", "24");

jsonTwo.put("hobbit", "Dota");

jsonTwo.put("hobbit2", "wow");

JSONObject jsonThree = new JSONObject();

jsonThree.putAll(jsonOne);

jsonThree.putAll(jsonTwo);

System.out.println(jsonThree.toString());

}

}

運行結果:
{"name":"12345","age":"24","hobbit":"Dota","hobbit2":"wow"}

7. 如何將兩個java數組拼接成json字元串 如下

...隨便找個 JSON轉換的插件吧,你先
把數組合並,然後 使用JSON 轉換工具類 很easy ,常用的插件 gson,fastjson等等 網路一下很多

閱讀全文

與java拼json相關的資料

熱點內容
單片機是什麼類型的書 瀏覽:635
linuxphpsendmail 瀏覽:621
螞蟻優化演算法視頻 瀏覽:402
高級語言編譯系統屬於什麼 瀏覽:23
語雀知識庫加密 瀏覽:948
安卓手機如何保持通話 瀏覽:52
放樣折彎命令選不了 瀏覽:120
語言編譯後不能形成目標 瀏覽:679
qt5linuxarm 瀏覽:568
單片機查詢等待程序 瀏覽:753
分析linux001 瀏覽:60
外網ping命令 瀏覽:674
加密文檔安全衛士 瀏覽:586
幫公司搭建伺服器怎麼收費 瀏覽:21
鴻蒙狀態欄如何加密 瀏覽:52
linux停止php 瀏覽:637
華碩a豆磁碟加密 瀏覽:287
馬士兵java基礎教程 瀏覽:796
接睫毛教程單根加密 瀏覽:233
狀態機的c語言編程 瀏覽:204