[英]Convert LitJson to Newtonsoft Json for run at IOS device Unity C#
如何在unity c#中將LitJson Json轉換為NewtonSoft Json?
范例:
在立森
JsonData CJsonData;
cJsonData = JsonMapper.ToObject(www.downloadHandler.text);
Debug.log(cJsonData["reason"].ToString();
//此cJsonData可以包含一個嵌套數組。
該代碼在Newtonsoft Json for ios中的外觀如何?
我不想創建類屬性,因為從www.donwloadHandler.text返回的內容可能有所不同。 這取決於回報。 當使用數據類型為JsonData的LitJson並使用JsonMapper.Tobject時,我可以輕松獲取數據,而無需任何其他代碼。
*
在LitJson中,我們具有DataType JsonData,它可以自動將其從Mapper轉換為關聯的數組。
*
我希望我能獲得像LitJson這樣的數據
的debug.log(cJsonData [ “原因”]的ToString();
或者可能
的debug.log(cJsonData [ “原因”] [ “ABC”]的ToString();
或者可能
的debug.log(cJsonData [ “原因”] [ “CC”] [ “AAA”]的ToString();
但是在newtonsoft json中,我們必須添加一個類來反序列化對象。
在newtonsoft json中:
someclass Json = JsonConvert.DeserializeObject<someclass>(www.donwloadHandler.text);
這我不想要。 因為我們需要添加一些類
和這個 :
string data = JsonConvert.DeserializeObject(www.downloadHanlder.text);
這也是我不想要的。 因為它是字符串,而不是像litjson這樣的關聯數組。
明白了嗎 ?
謝謝
差不多。 無需反序列化即可讀取數據,只需使用JObject:
using System;
using Newtonsoft.Json.Linq;
public class Program
{
public static void Main()
{
string json = @"
{
""CPU"": ""Intel"",
""Integrated Graphics"": true,
""USB Ports"": 6,
""OS Version"": 7.1,
""Drives"": [
""DVD read/writer"",
""500 gigabyte hard drive""
],
""ExtraData"" : {""Type"": ""Mighty""}
}";
JObject o = JObject.Parse(json);
Console.WriteLine(o["CPU"]);
Console.WriteLine();
Console.WriteLine(o["Drives"]);
Console.WriteLine();
Console.WriteLine(o["ExtraData"]["Type"]);
Console.ReadLine();
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.