using Newtonsoft.Json
public static string GetJsonNodeValue(string key, string sContent)
{
if (string.IsNullOrEmpty(sContent)) return "";
//JObject jo = (JObject)JsonConvert.DeserializeObject(sContent);
//var item = jo[key];
//if (item != null && item.ToString().Trim() != "")
//{
// return item.ToString();
//}
// JArray ja = (JArray)JsonConvert.DeserializeObject(sContent);
try
{
dynamic ja1 = JsonConvert.DeserializeObject(sContent);
var item1 = ja1[key];
if (item1 != null && item1.ToString().Trim() != "")
{
return item1.ToString();
}
}
catch (Exception ex)
{
}
return "";
}
public static string GetJsonNodeValueFromFirstArrayItem(string key, string sContent)
{
if (string.IsNullOrEmpty(sContent)) return "";
//JObject jo = (JObject)JsonConvert.DeserializeObject(sContent);
//var item = jo[key];
//if (item != null && item.ToString().Trim() != "")
//{
// return item.ToString();
//}
// JArray ja = (JArray)JsonConvert.DeserializeObject(sContent);
try
{
dynamic ja1 = JsonConvert.DeserializeObject(sContent);
var item1 = ja1[0][key];
if (item1 != null && item1.ToString().Trim() != "")
{
return item1.ToString();
}
}
catch (Exception ex)
{
}
return "";
}
本文介绍了一种使用C#从JSON字符串中提取特定节点值的方法,包括处理单一对象和数组中的第一个元素的情况。通过动态反序列化,提高了代码的灵活性。

被折叠的 条评论
为什么被折叠?



