導航:首頁 > 編程語言 > 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相關的資料

熱點內容
三維電子地圖加密 瀏覽:136
都市麗人的解壓視頻 瀏覽:864
我的世界伺服器轉送點怎麼轉 瀏覽:640
php用什麼linux系統 瀏覽:141
cgi模塊python 瀏覽:226
安卓手機如何悄無聲息整壞手機 瀏覽:808
php獲取資料庫名稱 瀏覽:557
app伺服器怎麼防止交互埠 瀏覽:833
對一個演算法的評價不包括 瀏覽:535
3D臉pdf 瀏覽:886
在編譯之前更改指定時間 瀏覽:360
機房伺服器電源線如何扎線 瀏覽:732
什麼演算法治宣傳 瀏覽:18
哪個app可以測溫槍 瀏覽:18
macmongodbphp 瀏覽:336
php寫游戲伺服器 瀏覽:875
對立陣營插旗命令 瀏覽:373
java實現帕斯卡三角形演算法 瀏覽:316
linux文件名限制 瀏覽:710
金稅三期代理伺服器地址是什麼意思 瀏覽:429