日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > javascript >内容正文

javascript

java json utf-8_Java 编码 和JSON

發(fā)布時(shí)間:2023/12/9 javascript 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java json utf-8_Java 编码 和JSON 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1.編碼

序列化(urlencode編碼):經(jīng)過(guò)urlencode編碼

String a="[{\"clubNo\":\"10000002\",\"clubType\":\"1\"},{\"clubNo\":\"10000003\",\"clubType\":\"4\"},{\"clubNo\":\"10000004\",\"clubType\":\"3\"}]";

將字符串a(chǎn)經(jīng)過(guò)urlencode編碼:?a?= java.net.URLEncoder.encode(a,"utf-8");

反序列化(urldecode解碼):

String a="%5b%7b%22clubNo%22%3a%2210000002%22%2c%22clubType%22%3a%221%22%7d%2c%7b%22clubNo%22%3a%2210000003%22%2c%22clubType%22%3a%224%22%7d%2c%7b%22clubNo%22%3a%2210000004%22%2c%22clubType%22%3a%223%22%7d%5d";

a=java.net.URLDecoder.decode(a,"UTF-8");

2.JSON

(1)將多個(gè)字符串轉(zhuǎn)換成json數(shù)據(jù):

String a="ert";

String c="kkkk";

JSONObject json=new JSONObject();

json.put("a", a);

json.put("c", c);

System.out.println(json.toJSONString());

{“a”:"ert","c":"kkkk"}

(2)解析json型的字符串:

String datas="{\"imei\":\"358732036143010\",\"version\":\"2.3\",\"apk\":[{\"appname\":\"SyncKey\",\"packagename\":\"com.discovery.synckey\"},{\"appname\":\"DbTest\",\"packagename\":\"com.discovery.synckey\"},{\"appname\":\"AppUpdate\",\"packagename\":\"com.discovery.synckey\"}]}";

JSONObject reqJson=JSONObject.parseObject(datas);

String imei=reqJson.getString("imei");

String apk=reqJson.getString("apk");//json型集合

JSONArray parseArry =JSONObject.parseArray(apk);

Iterator iterator =parseArry.iterator();

while(iterator.hasNext())

{

JSONObject object =(JSONObject)iterator.next();

String? appname?=(String)object.getString("appname")

}

(3).

原數(shù)據(jù)

datas: {"hma17-kme-180425dntn":"1531@1531@3","ym800_7.5_18031521":"745@744@369"}

解析后的數(shù)據(jù)

{"maxPage":2,"list":[{"name":"hma17-kme-180425dntn","num":"1531","actnum":"1531","weeknum":"3"},{"name":"ym800_7.5_18031521","num":"745","actnum":"744","weeknum":"369"}]}

JSONObject reqJson=JSON.parseObject(datas);

for(Map.Entry entry:reqJson.entrySet()){

System.out.println("~!!!!!!!!!!!!!!!!!!!!!");

System.out.println(entry.getKey());

System.out.println(entry.getValue());

String c=(String)entry.getValue();

String [] res=c.split("@");

String name=entry.getKey();

String num=res[0];

String actNum=res[1];

String? weekNum=res[2];

}

(4)

String??devices="hXqLTLv9@SyJ4KieG@SNXYQLyR";

String [] res=devices.split("@");

List a=new JSONArray();

for(int i=1;i

{

a.add(res[i]);

}

(5)

原數(shù)據(jù)

result: ["BuildInfo","t1a_v1.3_build201805230930","IMEI","358732036575930","buildModel","AIINCART1","cpuID","M186MY50SVPL13","cpuInfo","mt6737h:3:0xd03:0x0:7:0x41","deviceSN","0123456789ABCDEF","sysFeature","24","iccid","89861117147550357527"]

解析后的數(shù)據(jù)

{

"data": {

"sysFeature": "24",

"iccid": "89861117147550357527",

"cpuID": "M186MY50SVPL13",

"BuildInfo": "t1a_v1.3_build201805230930",

"IMEI": "358732036575930",

"buildModel": "AIINCART1",

"cpuInfo": "mt6737h:3:0xd03:0x0:7:0x41",

"deviceSN": "0123456789ABCDEF"

},

"errorCode": "0000",

"errorMsg": "成功獲取設(shè)備信息"

}

result = result.substring(1, result.length() - 1);

System.out.println("輸出結(jié)果"+result);

String deviceArray[]= result.split(",");

List deviceInfo =Arrays.asList(deviceArray);for (int i = 0; i < deviceInfo.size(); i += 2) {

String str=deviceInfo.get(i);if (str.contains("BuildInfo")) {

BuildInfo=deviceInfo.get(i + 1).substring(1, deviceInfo.get(i + 1).length() - 1);

}else if (str.contains("IMEI")) {

IMEI=deviceInfo.get(i + 1).substring(1, deviceInfo.get(i + 1).length() - 1);

}else if (str.contains("buildModel")) {

buildModel=deviceInfo.get(i + 1).substring(1, deviceInfo.get(i + 1).length() - 1);

}else if (str.contains("cpuID")) {

cpuID=deviceInfo.get(i + 1).substring(1, deviceInfo.get(i + 1).length() - 1);

}else if (str.contains("cpuInfo")) {

cpuInfo=deviceInfo.get(i + 1).substring(1, deviceInfo.get(i + 1).length() - 1);

}else if (str.contains("deviceSN")) {

deviceSN=deviceInfo.get(i + 1).substring(1, deviceInfo.get(i + 1).length() - 1);

}else if (str.contains("sysFeature")) {

sysFeature=deviceInfo.get(i + 1).substring(1, deviceInfo.get(i + 1).length() - 1);

}else if (str.contains("iccid")) {

iccid=deviceInfo.get(i + 1).substring(1, deviceInfo.get(i + 1).length() - 1);

}

System.out.println("*******"+str);

}

errorCode="0000";

errorMsg="成功獲取設(shè)備信息";

}

JSONObject json=newJSONObject();

JSONObject out=newJSONObject();

out.put("BuildInfo", BuildInfo);

out.put("IMEI", IMEI);

out.put("buildModel", buildModel);

out.put("cpuID", cpuID);

out.put("cpuInfo", cpuInfo);

out.put("deviceSN", deviceSN);

out.put("sysFeature", sysFeature);

out.put("iccid", iccid);json.put("errorCode", errorCode);

json.put("errorMsg", errorMsg);

json.put("data", out);

3.字符串不區(qū)分大小寫進(jìn)行比較

if(res[i].toLowerCase().contains(deviceId.toLowerCase())) //不區(qū)分大小寫比較是否相等

club.replaceAll("\"\"\"", "\""); //去掉字符串club中的\

a=a.replace("\"", "");//去掉字符串a(chǎn)中的"

4.訪問(wèn)三方的接口

Maven項(xiàng)目中要加依賴:

com.bladejava

blade-kit

1.3.4

(1)get

url="http://"+ipNum+"/wxServer/GetOnlineDeviceID?num=ALL";

HttpRequest req=HttpRequest.get(url);

String content=req.body();? //三方接口返回的內(nèi)容

(2)post請(qǐng)求

//openIdUrl? 具體的url

HttpRequest request = HttpRequest.post(openIdUrl).contentType("application/json;charset=utf-8");

String res = request.body();??//三方接口返回的內(nèi)容

JSONObject obj = JSON.parseObject(res);

String access_token=obj.getString("access_token");?//三方接口中具體某個(gè)字段值

(3)post請(qǐng)求帶有數(shù)據(jù)型訪問(wèn)三方接口

//UNURL? 具體的url

String xml="";

HttpRequest request = HttpRequest.post(UNURL).contentType("application/json;charset=utf-8").send(xml);

returnxml=request.body();

總結(jié)

以上是生活随笔為你收集整理的java json utf-8_Java 编码 和JSON的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。