使用json.net解析json并处理jobobject上的nullexception



我正在使用json.net来解析json,并将字符串转换为像这样的对象

 Dim jobj As JObject = JObject.Parse(tweet)
 sid = jobj("id").ToString

它似乎工作得很好,但当一个特定的标签不存在时,我得到nullexception。我该如何处理?例如:

"id":123456787,
"id_str":"123456787",
"text":"HELLO help with parsing json",

如果id_str字段不存在,它会抛出一个错误,我不想检查我试图解析的每个字段的空值。另一种方法是,我尝试使用jobj并获得所有子节点的列表,然后遍历它们。

欢迎指教

您可以使用CType操作符将具有字符串值的JToken直接转换为字符串:

Dim jobj As JObject = JObject.Parse(tweet)
Dim sid = CType(jobj("id"), String)

这是有效的,因为JToken有大量显式类型转换到基本数据类型的内置。而且,当基本类型是引用类型或可空类型时,显式强制转换操作符将在空输入时返回Nothing。示例小提琴。

你也可以在Visual Studio 2015中使用空条件运算符

相关内容

  • 没有找到相关文章

最新更新