2011-04-11 2 views
1

json 형식으로 요청을 serialize하는 .net 코드가 있습니다. 코드는 다음과 같습니다..net의 Newtonsoft.Json.Json.JsonConvert.SerializeObject (Object source, Newtonsoft.Json.JsonSerializerSettings())에 해당하는 Java 코드?

var ops = new Newtonsoft.Json.JsonSerializerSettings(); 
    ops.NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore; 
    ops.MissingMemberHandling = Newtonsoft.Json.MissingMemberHandling.Ignore; 
    ops.DefaultValueHandling = Newtonsoft.Json.DefaultValueHandling.Ignore; 
    ops.Converters.Add(new Newtonsoft.Json.Converters.JavaScriptDateTimeConverter()); 

    String strSO = Newtonsoft.Json.JsonConvert.SerializeObject(source, 
    bIndent ? Newtonsoft.Json.Formatting.Indented : Newtonsoft.Json.Formatting.None, 
    ops); 

이 부분에 해당하는 자바 코드를 시도했지만 작동하지 않습니다.

+0

Java와 함께 사용중인 JSON 라이브러리는 무엇입니까? – AndyT

+0

@AndyT : blackberry jre 파일이 하나 있습니다 .net_rim_api.jar .. 그 jar 파일 안의 기본 json 라이브러리를 사용하고 있습니다. –

답변

3

하단은 Newtonsoft 시리얼 멤버 변수와 오브젝트를 해당 개체를 나타내는 JSON 문자열을 출력한다.

그래서 당신은 같은 것을 수행 할 수 있습니다

Product product = new Product(); 

product.Name = "Apple"; 
product.Expiry = new DateTime(2008, 12, 28); 
product.Price = 3.99M; 
product.Sizes = new string[] { "Small", "Medium", "Large" }; 

string output = JsonConvert.SerializeObject(product); 

을 그리고 당신은 같은 출력 문자열 얻을 것이다 :

{"Name": "Apple", 
"Expiry": "\/Date(1230375600000+1300)\/", 
"Price": 3.99, 
"Sizes": ["Small", "Medium", "Large"] 
} 

을 이제 나쁜 소식은 블랙 베리 라이브러리는 아무튼 사용하고있는 그이다 직렬화되는 객체의 구조를 검사하기 위해 반사를 사용하지 마십시오. 시리얼 라이저가 아닌 포매터입니다.

좋은 소식은 사용하기가 쉽다는 것입니다. 문서는 여기에 있습니다 :

요컨대

http://www.blackberry.com/developers/docs/6.0.0api/org/json/me/package-summary.html

은, 위의 예 하나로 오브젝트를 작성, 당신은 같은 것을 할 것 : 등등

myString = new JSONStringer() 
.object() 
    .key("Name") 
    .value("Apple") 
    .key("Expiry") 
    .value("Date("+myDate.getTime()+")") 
.endObject() 
.toString(); 

.. 그리고 있습니다. JSON 라이브러리에 객체가 출력하려는 ​​데이터의 정확한 구조라고 가정하는 대신 요소별로 JSON 구조 요소를 구성하는 것입니다.

이 방법을 사용하면 진행 방법을 알 수 있습니다.

0

"사용자가 JSON 형식으로 일련 번호를 지정할 때 Newtonsoft.Json for .NET에 해당하는 Java를 알고 있습니까?"

체크 내에서 이해 http://json.org

관련 문제