创建一个自定义JSON令牌生成器

时间:2019-04-04 05:18:27

标签: c# json tokenize

我正在尝试将JSON解析为令牌对象。现在,我使用JSON.Net生成了一个静态类,并使用Json2csharp对其进行了解析,但是我想使每个数组元素都具有自己的Token对象,但我不太确定如何做到这一点。我需要实现自己的JSON解析器吗?我可以根据需要修改JSON对象。

我的JSON反序列化器:JSONopMap jo = JsonConvert.DeserializeObject<JSONopMap>(myjson2);

public class JSONopMap
{
List<List<string>>addr  {get;set;}
}

JSON

{
  'addr':[['~address'],['removeall','.'],['append',' ','~age']]
}

我的最终目标是创建一个像这样的MyToken类:

public class MyToken
{
public enum tokenType {get;set;}
public List<string> parts {get;set;}
}

public class TokenParent{
public string ResultName{get;set;}
public List<MyToken> mytokens{get;set;}
}

public enum tokenType{Map,Append,Removeall,Lower}

所以我会有三个MyToken对象,像这样:

new MyToken{
 tokenType=Map,
 parts=new List<string>(){"~address"}
}

new MyToken{
 tokenType=Removeall,
 parts=new List<string>(){"."}
}

new MyToken{
 tokenType=Append,
 parts=new List<string>(){" ","~age"}
}

和包含它们全部的父项:

new TokenParent{
 ResultName="addr",
 mytokens = (the tokens created above)
}

0 个答案:

没有答案