繁体   English   中英

将json字符串转换为二维布尔数组

[英]convert json string into two dimensional bool array

有谁知道如何将包含JSON的字符串转换为ac#2D数组。 我有它从网络浏览器读取text / json并将其存储到字符串中。

 "BoolArry": [
               [ true, true, false, ... ],
               [ true, true, true, ...],
               ...,
               [ true, false, false, ... ]
             ]

您可以使用.Net提供的JavaScript序列化程序: JavaScriptSerializer (使用using System.Web.Script.Serialization;

var boolArrayStr =
    @"[
        [ true, true, true ],
        [ true, true, false ],
        [ true, false, false ],
        [ false, false, false ],
    ]";

JavaScriptSerializer jss = new JavaScriptSerializer();

bool[][] boolArrays = jss.Deserialize<bool[][]>(boolArrayStr);

foreach (bool[] array in boolArrays)
{
    foreach (bool val in array)
    {
        Console.Write(val);
        Console.Write(" ");
    }

    Console.WriteLine("");
}

输出为:

True True True
True True False
True False False
False False False

我将Json写入文件(D:\\ Temp \\ text.txt):

[
  [ true, true, false ],
  [ true, true, true ],
  [ true, false, false ]
]

您可以将其读取为Newtonsoft.Json.Linq.JArray并根据需要进行转换:

Newtonsoft.Json.Linq.JArray obj = Newtonsoft.Json.JsonConvert.DeserializeObject(File.ReadAllText(@"D:\Temp\text.txt")) as Newtonsoft.Json.Linq.JArray;
var arr = (from e in obj select e.Values<bool>().ToArray()).ToArray();

arrbool[][]类型(数组数组)

用法:

bool value = arr[x][y];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM