json 에서 jobject
원래 Newtonsoft. JSon 과. net 의 자 바스 크 립 트 Serializer 가 거의 다 르 지 않다 고 생각 했 기 때문에 프로젝트 의 JSon 을 모두 자 바스 크 립 트 Serializer 로 바 꾸 어 실현 하 였 으 나 최근 몇 일 에 하나의 수 요 를 만 났 습 니 다. 반 직렬 화 할 때 저 는 미리 정 의 된 클래스 가 아니 라 사전 형식 으로 읽 어야 합 니 다.
그래서 저 는 모델 대상 이 없 기 때문에 모든 JSon 읽 기와 검 측 과정 을 다시 써 야 합 니 다.
나중에 Newtonsoft 에서 제 가 필요 로 하 는 기능 을 제 공 했 고 심지어 JSon 의 Linq 조회 도 제 공 했 습 니 다.
JObject
다음은 실례 를 들 어 그것 의 읽 기와 쓰 기 를 해결 하 겠 습 니 다.
1. 제 이 슨 은 이 렇 습 니 다.
{title:123,body:456,list:{title:' ',body:'what'}}
2. , :
static void Main(string[] args) { string str = "{title:123,body:456,list:{title:' ',body:'what'}}"; JObject o = JObject.Parse(str); Console.WriteLine(o["title"]); Console.WriteLine(o["body"]); Console.WriteLine(o["list"]["title"]); Console.WriteLine(o["list"]["body"]); Console.ReadKey(); }
3. :
123
456
" "
"what"
: "", .Trim
Linq to Json
기본 Linq 의 차이 가 많 지 않 습 니 다. JSon. net 문 서 를 참고 하 십시오. 이것 은 깊이 연구 하지 않 았 습 니 다.
string str = "{title:123,body:456,list:{title:' ',body:'what'}}";
JObject o = JObject.Parse(str);
var s = from p in o.Children() select p; foreach (var item in s) { Console.WriteLine(item); } Console.ReadKey();
json 학습:http://www.w3school.com.cn/json/json_intro.asp
<html>
<body>
<h2> JavaScript JSON </h2>
<p>
Name: <span id="jname"></span><br />
Age: <span id="jage"></span><br />
Address: <span id="jstreet"></span><br />
Phone: <span id="jphone"></span><br />
</p>
<script type="text/javascript">
var JSONObject= {
"name":"Bill Gates",
"street":"Fifth Avenue New York 666",
"age":56,
"phone":"555 1234567"};
document.getElementById("jname").innerHTML=JSONObject.name
document.getElementById("jage").innerHTML=JSONObject.age
document.getElementById("jstreet").innerHTML=JSONObject.street
document.getElementById("jphone").innerHTML=JSONObject.phone
</script>
</body>
</html>
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.