Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
c#中的JSON解析。Json字符串位于javascript文件中_Json_C# 4.0 - Fatal编程技术网

c#中的JSON解析。Json字符串位于javascript文件中

c#中的JSON解析。Json字符串位于javascript文件中,json,c#-4.0,Json,C# 4.0,我在解析从javascript文件(比如xyz.js)检索的JSON数据时遇到了一个问题 文件大小约为10mb,其中只存在一个JSON字符串 我们直接使用javascript来解析这个文件,我想知道我们是否有任何C#类来解析这个文件 JSON字符串的示例是 var JSONString = { Level1:{ DateTime:{ date:'Wed Sep 14 14:19:32 CDT 2011' }, i

我在解析从javascript文件(比如xyz.js)检索的JSON数据时遇到了一个问题 文件大小约为10mb,其中只存在一个JSON字符串

我们直接使用javascript来解析这个文件,我想知道我们是否有任何C#类来解析这个文件

JSON字符串的示例是

var JSONString = {
    Level1:{
        DateTime:{
              date:'Wed Sep 14 14:19:32 CDT 2011'
        },
        information:{
              url:'http:\\www.google.com'
        },
        RepetitiveLevel:[
            {
                ids:{
                    courses:[
                        "BE",
                        "MS"
                    ]
                },
                SubRepetitiveLevels:{
                    DetailedLevel:[
                        {
                            name:"Trial 1",
                            type:"blah",
                            latest:"no",
                            version:"1",
                            description:"This is a test 1.",
                            recommendation:"blah",
                            prerequisite:"<strong>WARNING!</strong> xyz",
                            releasedate:"2012-06-18T15:38:55.79",
                            support:{
                                degree:[
                                    "MSC",
                                    "BSC",
                                    "HSE"
                                ]
                            },
                            OperatingSystem:{
                                os:["Win 2008 x64"
                                ]
                            },
                            previousversions:{
                                version:[
                                ]
                            },
                            allversions:{
                                version:[
                                    "1",
                                    "2",
                                    "3"
                                ]
                            },
                            ftppath:"ftp://",
                            files:{
                                file:["note1.txt"
                                ]
                            },
                            filesizes:{
                                filesize:["5MB"
                                ]
                            },
                            checkSum:{
                                md5:["abc"
                                ]
                            },
                            note:"<P><STRONG>NOTE: </STRONG> NOTE 1 </LI></UL></OL>",
                            fix:"<P style=\"MARGIN-TOP: 4pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0pt; COLOR: #000000; FONT-FAMILY: Arial\"> xyz <STRONG></P></LI></UL>"                           

                        },
                        {
                            name:"Trial 2",
                            type:"blah",
                            latest:"yes",
                            version:"2",
                            description:"This is a test 2.",
                            recommendation:"blah",
                            prerequisite:"<strong>WARNING!</strong> xyz",
                            releasedate:"2012-06-18T15:38:55.79",
                            support:{
                                degree:[
                                    "MCA",
                                    "BCA",
                                    "BE"
                                ]
                            },
                            OperatingSystem:{
                                os:["Win XP"
                                ]
                            },
                            previousversions:{
                                version:[
                                ]
                            },
                            allversions:{
                                version:[
                                    "4",
                                    "5",
                                    "6"
                                ]
                            },
                            ftppath:"ftp://",
                            files:{
                                file:["Note2.txt"
                                ]
                            },
                            filesizes:{
                                filesize:["2MB"
                                ]
                            },
                            checkSum:{
                                md5:["abc"
                                ]
                            },
                            note:"<P><STRONG>NOTE: </STRONG> NOTE 2 </LI></UL></OL>",
                            fix:"<P style=\"MARGIN-TOP: 4pt; FONT-SIZE: 10pt; MARGIN-BOTTOM: 0pt; COLOR: #000000; FONT-FAMILY: Arial\"> ahahah <STRONG></P></LI></UL>"                           

                        }


                    ]
                }
            }
        ]
    }
}



The tag named "RepetitiveLevel" will be repeating more than 10 times 
Under this tag, there will be repetitions of "SubRepetitiveLevels", which in turn contains more than one entry for "DetailedLevel". 
This kind of JSON string fails for Newtonsoft.Json.JsonConvert.DeserializeObject 

   I know this is a little bit confusing, but we are not finding any other option. 
var JSONString={
第1级:{
日期时间:{
日期:“2011年9月14日星期三14:19:32”
},
资料:{
url:'http:\\www.google.com'
},
重复水平:[
{
ID:{
课程:[
“是”,
“MS”
]
},
子重复级别:{
详细级别:[
{
名称:“审判1”,
键入:“废话”,
最新:“否”,
版本:“1”,
描述:“这是测试1。”,
建议:“废话”,
先决条件:“警告!xyz”,
发布日期:“2012-06-18T15:38:55.79”,
支持:{
学位:[
“理学硕士”,
“理学士”,
“HSE”
]
},
操作系统:{
os:[“赢得2008 x64”
]
},
以前的版本:{
版本:[
]
},
所有版本:{
版本:[
"1",
"2",
"3"
]
},
ftppath:“ftp://”,
档案:{
文件:[“note1.txt”
]
},
文件大小:{
文件大小:[“5MB”
]
},
校验和:{
md5:[“abc”
]
},
注:“

注:注1”, 修正:“

xyz

” }, { 名称:“审判2”, 键入:“废话”, 最新:“是”, 版本:“2”, 描述:“这是测试2。”, 建议:“废话”, 先决条件:“警告!xyz”, 发布日期:“2012-06-18T15:38:55.79”, 支持:{ 学位:[ “MCA”, “BCA”, “是” ] }, 操作系统:{ os:[“赢XP” ] }, 以前的版本:{ 版本:[ ] }, 所有版本:{ 版本:[ "4", "5", "6" ] }, ftppath:“ftp://”, 档案:{ 文件:[“Note2.txt” ] }, 文件大小:{ 文件大小:[“2MB” ] }, 校验和:{ md5:[“abc” ] }, 注:“

注:注2”, 修正:“

ahahah

” } ] } } ] } } 名为“RepetitiveLevel”的标记将重复10次以上 在此标记下,将重复“SubRepetitiveLevel”,这反过来又包含多个“DetailedLevel”条目。 这种JSON字符串对于Newtonsoft.JSON.JsonConvert.DeserializeObject失败 我知道这有点令人困惑,但我们没有找到任何其他选择。
任何帮助都足够了。提前谢谢

试试图书馆。我们在一个ASP.NET项目中使用了它,效果很好

该程序通过序列化/反序列化写入然后读取100mb文件

class Program
{
    static void Main(string[] args)
    {
        var lst = new List<string>();
        for (var i = 0; i < 1024 * 1024 * 10; i++)
        {
            lst.Add(i.ToString());
            if(i%(1024 * 1024)==0)Console.WriteLine("+1m");
        }
        var wrt = Newtonsoft.Json.JsonConvert.SerializeObject(lst);
        lst = null;
        File.WriteAllText(@"F:\1.txt",wrt);
        Console.WriteLine("written");
        wrt = "";
        GC.Collect();
        wrt=File.ReadAllText(@"F:\1.txt");
        lst=Newtonsoft.Json.JsonConvert.DeserializeObject<List<string>>(wrt);
        Console.WriteLine("read");
        Console.WriteLine(lst.Count.ToString());
    }
}
类程序
{
静态void Main(字符串[]参数)
{
var lst=新列表();
对于(变量i=0;i<1024*1024*10;i++)
{
添加(i.ToString());
如果(i%(1024*1024)==0)控制台写入线(“+1m”);
}
无功功率