java中的json转化

json在线翻译工具:

http://www.bejson.com/jsoneditoronline/

第一种:

首先要下载所需的函数库,我这里使用的是google-gson-2.2.4,(下载链接:http://download.csdn.net/detail/a771948524/6668573)。下载完成之后,在项目上新建一个lib文件,把下载文件复制进去,右键选择添加至构建路径。至此,准备工作基本完成。

接下来就是写代码了。这里,我把代码贴出来,如下所示:

[java] view plain copy
 
print ?
  1. import com.google.gson.JsonArray;  
  2. import com.google.gson.JsonObject;  
  3.   
  4. /** 
  5.  * @date 2015-05-25 
  6.  * @author jack  
  7.  * 
  8.  */  
  9. public class CreateJson {  
  10.   
  11.     public static void main(String[] args) {  
  12.         //新建json对象就可以直接增加属性了  
  13.         JsonObject jsonObject = new JsonObject();  
  14.         jsonObject.addProperty("cat""it");  
  15.           
  16.         //建立json数组,数组里面是一组或多组json对象的数据  
  17.         JsonArray jsonArray = new JsonArray();  
  18.   
  19.         JsonObject jObject1 = new JsonObject();  
  20.         jObject1.addProperty("id"1);  
  21.         jObject1.addProperty("name""java");  
  22.         jObject1.addProperty("ide""Eclipse");  
  23.         jsonArray.add(jObject1);  
  24.   
  25.         JsonObject jObject2 = new JsonObject();  
  26.         jObject2.addProperty("id"2);  
  27.         jObject2.addProperty("name""Swift");  
  28.         jObject2.addProperty("ide""X-code");  
  29.         jsonArray.add(jObject2);  
  30.   
  31.         JsonObject jObject3 = new JsonObject();  
  32.         jObject3.addProperty("id"3);  
  33.         jObject3.addProperty("name""C#");  
  34.         jObject3.addProperty("ide""Visual Studio");  
  35.         jsonArray.add(jObject3);  
  36.   
  37.         jsonObject.add("languages", jsonArray);  
  38.         jsonObject.addProperty("pop""true");  
  39.         System.out.println(jsonObject.toString());  
  40.     }  
  41. }  
import com.google.gson.JsonArray;
import com.google.gson.JsonObject;

/**
 * @date 2015-05-25
 * @author jack 
 *
 */
public class CreateJson {

	public static void main(String[] args) {
		//新建json对象就可以直接增加属性了
		JsonObject jsonObject = new JsonObject();
		jsonObject.addProperty("cat", "it");
		
		//建立json数组,数组里面是一组或多组json对象的数据
		JsonArray jsonArray = new JsonArray();

		JsonObject jObject1 = new JsonObject();
		jObject1.addProperty("id", 1);
		jObject1.addProperty("name", "java");
		jObject1.addProperty("ide", "Eclipse");
		jsonArray.add(jObject1);

		JsonObject jObject2 = new JsonObject();
		jObject2.addProperty("id", 2);
		jObject2.addProperty("name", "Swift");
		jObject2.addProperty("ide", "X-code");
		jsonArray.add(jObject2);

		JsonObject jObject3 = new JsonObject();
		jObject3.addProperty("id", 3);
		jObject3.addProperty("name", "C#");
		jObject3.addProperty("ide", "Visual Studio");
		jsonArray.add(jObject3);

		jsonObject.add("languages", jsonArray);
		jsonObject.addProperty("pop", "true");
		System.out.println(jsonObject.toString());
	}
}

第二种:

java json字符串转JSONObject和JSONArray以及取值
  1. import net.sf.json.JSONArray;  
  2. import net.sf.json.JSONObject;  
  3.   
  4. public class JsonTest {  
  5.     public static void main(String[] args) {  
  6.         String joStr = "{name:\"张三\",age:\"20\"}";  
  7.         //将json字符串转化为JSONObject  
  8.         JSONObject jsonObject = JSONObject.fromObject(joStr);  
  9.         //通过getString("")分别取出里面的信息  
  10.         String name = jsonObject.getString("name");  
  11.         String age = jsonObject.getString("age");  
  12.         //输出   张三  20  
  13.         System.out.println(name+"  "+age);  
  14.           
  15.         String jaStr = "[{user:{name:\"张三\",age:\"20\"}},{score:{yuwen:\"80\",shuxue:\"90\"}}]";  
  16.         //将jsonArray字符串转化为JSONArray  
  17.         JSONArray jsonArray = JSONArray.fromObject(jaStr);  
  18.         //取出数组第一个元素  
  19.         JSONObject jUser = jsonArray.getJSONObject(0).getJSONObject("user");  
  20.         //取出第一个元素的信息,并且转化为JSONObject  
  21.         String name2 = jUser.getString("name");  
  22.         String age2 = jUser.getString("age");  
  23.         //输出  张三  20  
  24.         System.out.println(name2+"  "+age2);  
  25.         //取出数组第二个元素,并且转化为JSONObject  
  26.         JSONObject jScore = jsonArray.getJSONObject(1).getJSONObject("score");  
  27.         //取出第二个元素的信息  
  28.         String yuwen = jScore.getString("yuwen");  
  29.         String shuxue = jScore.getString("shuxue");  
  30.         //输出   80  90  
  31.         System.out.println(yuwen+"   "+shuxue);  
  32.     }  
  33.       
  34. }  

第三种:

Jackson 是一个 Java 用来处理 JSON 格式数据的类库,性能非常好。

示例:

{
   : {  : ,  :  },
   : ,
   : ,
   : 
}
 class User {
      Gender { MALE, FEMALE };

      class Name {
        _first, _last;

        getFirst() {  _first; }
        getLast() {  _last; }

       void setFirst( s) { _first = s; }
       void setLast( s) { _last = s; }
    }

     Gender _gender;
     Name _name;
      _isVerified;
     [] _userImage;

     Name getName() {  _name; }
      isVerified() {  _isVerified; }
     Gender getGender() {  _gender; }
     [] getUserImage() {  _userImage; }

     void setName(Name n) { _name = n; }
     void setVerified( b) { _isVerified = b; }
     void setGender(Gender g) { _gender = g; }
     void setUserImage([] b) { _userImage = b; }
}
ObjectMapper mapper =  ObjectMapper(); User user = mapper.readValue( File(), User.class);

猜你喜欢

转载自weitao1026.iteye.com/blog/2384152