當前位置:首頁 » 編程語言 » javajson字元串

javajson字元串

發布時間: 2023-05-18 08:03:41

㈠ 關於java處理JSON字元串的新手問題

第一點:你既然使用了net.sf.json.JSONObject對象引入了jar包直接使用其的fromObject將對象轉為字元串鬧檔效率更高,出錯的概率也更小一些。

第二點:對象中套對象的方式也很簡單,稿如如這樣

public static void main(String[] args) {

Map map1 = new HashMap();
Map map2 = new HashMap();
Map map3 = new HashMap();

map3.put("value","Male");
map2.put("gender",map3);
map1.put("attributes",map2);

JSONObject json = JSONObject.fromObject(map1);
System.out.println(json);
}

㈡ 怎樣從java後台獲取json字元串並轉換為json對象輸出

使用json-lib.jar這個工具x0dx0apublic String getJson(Object obj){x0dx0a JSONObject json;x0dx0a json = JSONObject.fromObject(obj);x0dx0a return json.toString();x0dx0a}x0dx0a使用jquery來處理jsonx0dx0a//轉換為json數據 datas可以用ajax從後台獲取上面getJson中的數據x0dx0avar jsonDatas = eval("(" + datas + ")");x0dx0a //循環遍歷數據x0dx0ajQuery.each(jsonDatas, function(item) {x0dx0a//循環x0dx0a});

㈢ 怎樣用java解析一個json字元串

public static void main(String[] args){

String temp="{'data':{'a':[{'b1':'bb1','c1':'cc1'},{'b2':'bb2','c2':'cc2'}]}}";

JSONObject jodata =JSONObject.fromObject(temp);

JSONObject joa =JSONObject.fromObject(jodata.get("data").toString());

JSONArray ja=JSONArray.fromObject(joa.get("a"));

for(int i=0;i<ja.size();i++){

JSONObject o=ja.getJSONObject(i);

if(o.get("b1")!=null){

System.out.println(o.get("b1"));

}

if(o.get("c1")!=null){

System.out.println(o.get("c1"));

}

if(o.get("b2")!=null){

System.out.println(o.get("b2"));

}

if(o.get("c2")!=null){

System.out.println(o.get("c2"));

}

}

}

註:要包含兩個jar包ezmorph-1.0.6.jar和json-lib-2.2.2-jdk15.jar,jar包在附件中

㈣ java解析json字元串裡面欄位不能為空的工具類

解析JSON字元串時,如果某個欄位仿坦為空,可能會導致程序出現異常或錯誤結果。為了避免這種情況,可以使用工具類來確保欄位不為空。

在Java中,可以使用Gson庫來解析JSON字元串。Gson提供了fromJson()方法將讓漏JSON字元串轉換為Java對象,但是如果JSON字元串中某個欄位為空,fromJson()方法會將該欄位解析為null值。為了避免這種情況,可以使用GsonBuilder類中的setLenient()方法來禁用該特坦大爛性,這樣在解析JSON字元串時如果發現某個欄位為空,就會拋出異常。

另外,還可以使用Jackson庫來解析JSON字元串。Jackson庫提供了ObjectMapper類來進行JSON與Java對象之間的轉換。可以使用它的setSerializationInclusion()方法來設置序列化規則,如果欄位值為null則忽略該欄位,如果欄位值為非null則進行序列化。

因此,為了確保JSON字元串裡面的欄位不為空,可以使用Gson或Jackson庫提供的相關方法或設置。

㈤ java將json字元串轉換成對象批量存儲數據

使用toJSONString()或者全局方法JSON.stringify()。將json字元串轉換為json對象的方法。在數據傳輸過程中,json是以文本,即字元串的形式傳遞的,JS操作的是JSON對象,JSON對象和JSON字元串之間的相互轉換是關鍵。

㈥ Java解析json數據

一、 JSON (JavaScript Object Notation)一種簡單的數據格式,比xml更輕巧。
Json建構於兩種結構:
1、「名稱/值」對的集合(A collection of name/value pairs)。不同的語言中,它被理解為對象(object),紀錄(record),結構(struct),字典(dictionary),哈希表(hash table),有鍵列表(keyed list),或者關聯數組 (associative array)。 如:
{
「name」:」jackson」,
「age」:100
}

2、值的有序列表(An ordered list of values)。在大部分語言中,它被理解為數組(array)如:
{
「students」:
[
{「name」:」jackson」,「age」:100},
{「name」:」michael」,」age」:51}
]
}
二、java解析JSON步驟
A、伺服器端將數據轉換成json字元串
首先、伺服器端項目要導入json的jar包和json所依賴的jar包至builtPath路徑下(這些可以到JSON-lib官網下載:http://json-lib.sourceforge.net/)

然後將數據轉為json字元串,核心函數是:
public static String createJsonString(String key, Object value)
{
JSONObject jsonObject = new JSONObject();
jsonObject.put(key, value);
return jsonObject.toString();
}
B、客戶端將json字元串轉換為相應的javaBean
1、客戶端獲取json字元串(因為android項目中已經集成了json的jar包所以這里無需導入)
public class HttpUtil
{

public static String getJsonContent(String urlStr)
{
try
{// 獲取HttpURLConnection連接對象
URL url = new URL(urlStr);
HttpURLConnection httpConn = (HttpURLConnection) url
.openConnection();
// 設置連接屬性
httpConn.setConnectTimeout(3000);
httpConn.setDoInput(true);
httpConn.setRequestMethod("GET");
// 獲取相應碼
int respCode = httpConn.getResponseCode();
if (respCode == 200)
{
return ConvertStream2Json(httpConn.getInputStream());
}
}
catch (MalformedURLException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
return "";
}

private static String ConvertStream2Json(InputStream inputStream)
{
String jsonStr = "";
// ByteArrayOutputStream相當於內存輸出流
ByteArrayOutputStream out = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int len = 0;
// 將輸入流轉移到內存輸出流中
try
{
while ((len = inputStream.read(buffer, 0, buffer.length)) != -1)
{
out.write(buffer, 0, len);
}
// 將內存流轉換為字元串
jsonStr = new String(out.toByteArray());
}
catch (IOException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
return jsonStr;
}
}
2、獲取javaBean
public static Person getPerson(String jsonStr)
{
Person person = new Person();
try
{// 將json字元串轉換為json對象
JSONObject jsonObj = new JSONObject(jsonStr);
// 得到指定json key對象的value對象
JSONObject personObj = jsonObj.getJSONObject("person");
// 獲取之對象的所有屬性
person.setId(personObj.getInt("id"));
person.setName(personObj.getString("name"));
person.setAddress(personObj.getString("address"));
}
catch (JSONException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}

return person;
}

public static List<Person> getPersons(String jsonStr)
{
List<Person> list = new ArrayList<Person>();

JSONObject jsonObj;
try
{// 將json字元串轉換為json對象
jsonObj = new JSONObject(jsonStr);
// 得到指定json key對象的value對象
JSONArray personList = jsonObj.getJSONArray("persons");
// 遍歷jsonArray
for (int i = 0; i < personList.length(); i++)
{
// 獲取每一個json對象
JSONObject jsonItem = personList.getJSONObject(i);
// 獲取每一個json對象的值
Person person = new Person();
person.setId(jsonItem.getInt("id"));
person.setName(jsonItem.getString("name"));
person.setAddress(jsonItem.getString("address"));
list.add(person);
}
}
catch (JSONException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}

return list;
}

㈦ 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字元串

你好:

後台拆分json

privateStringinteractPrizeAll;//json使用字元串來接收
方法中的代碼:
Gsongson=newGson();
InteractPrizeinteractPrize=newInteractPrize();
//gson用泛型轉List數組多個對象
List<InteractPrize>interactPrizeList=gson.fromJson(interactPrizeAll,newTypeToken<List<InteractPrize>>(){}.getType());//TypeToken,它是gson提供的數據類型轉換器,可以支持各種數據集合類型轉換
for(inti=0;i<interactPrizeList.size();i++)
{
interactPrize=interactPrizeList.get(i);//獲取每一個對象
}
這一種方法是轉單個對象時使用的
//gson轉對象單個對象
//interactPrize=gson.fromJso(interactPrizeAll,InteractPrize.class);

這個方法是我後台拼的json往前台傳的方法
jsonStrAll.append("{"+"""+"catid"+"""+":"+"""+c.getCatid()+"""+","+"""+"catname"+"""+":"+"""+c.getCatname()+"""+","+"""+"catdesc"+"""+":"+"""+c.getCatdesc()+"""+","+"""+"showinnav"+"""+":"+"""+c.getShowinnav()+"""+","+"""+"sortorder"+"""+":"+"""+c.getSortorder()+"""+","+"level:"+"""+"0"+"""+",parent:"+"""+"0"+"""+",isLeaf:true,expanded:false,"+"loaded:true},");

你自己挑著用吧!

熱點內容
怎麼建立電腦配置文件 發布:2025-07-15 19:23:57 瀏覽:671
手機導航源碼下載 發布:2025-07-15 19:18:29 瀏覽:499
什麼是原生態安卓機 發布:2025-07-15 19:16:52 瀏覽:686
linux的安裝目錄在哪 發布:2025-07-15 19:10:04 瀏覽:724
2008編程入門經典 發布:2025-07-15 18:58:44 瀏覽:603
艾派密碼是什麼 發布:2025-07-15 18:47:40 瀏覽:588
密碼鎖如何在裡面開門 發布:2025-07-15 18:35:00 瀏覽:521
額溫演算法 發布:2025-07-15 18:18:14 瀏覽:728
ie客戶端事件腳本執行異常 發布:2025-07-15 18:10:13 瀏覽:26
自製壓縮兔糧 發布:2025-07-15 18:09:25 瀏覽:12