当前位置: 首页 > 面试题库 >

JSON.NET JObject键比较不区分大小写

东方震博
2023-03-14
问题内容

我正在使用Newtonsoft
Json.net解析JSON字符串。我将字符串转换为JObject。当通过键访问元素的值时,我要比较是不区分大小写的。在下面的代码中,我使用“
FROM”作为键。我希望它在行json [“ FROM”]。ToString()处返回字符串“ 1”。但是失败了。是否可以使下面的代码正常工作?

String ptString = "{from: 1, to: 3}";
var json = (JObject)JsonConvert.DeserializeObject(ptString);

String f = json["FROM"].ToString();

问题答案:

c#允许您将字典与不区分大小写的键一起使用,因此我使用的解决方法是将JObject转换为具有StringComparer.CurrentCultureIgnoreCaseset
的字典,如下所示:

JObject json = (JObject)JsonConvert.DeserializeObject(ptString);
Dictionary<string, object> d = new Dictionary<string, object>(json.ToObject<IDictionary<string, object>>(), StringComparer.CurrentCultureIgnoreCase);

String f = d["FROM"].ToString();


 类似资料:
  • 问题内容: 我正在尝试为其中一个根据您的回答做出响应的程序编写代码。我想这样做,以便某些变量不区分大小写。例如,如果我的变量等于我希望它也等于。那可能吗? 到目前为止,这是我的代码: 我不想为每个答案都设置2种情况,其中一种是大写,另一种是小写。 稍微偏离主题的问题。如何关闭扫描仪的资源泄漏? 问题答案: 值得一提: 或简单地使用:

  • 问题内容: 如何以不区分大小写的方式比较字符串? 例如,“ Go”和“ go”应视为相等。 问题答案: https://golang.org/pkg/strings/#EqualFold是您要寻找的功能。它的用法如下(来自链接文档的示例):

  • 问题内容: 我只是意识到,SQL Server比较器用于文本比较时不区分大小写。关于此功能,我有几个问题: 所有数据库都相同还是特定于SQL Server? 到目前为止,我一直在使用该功能来确保文本比较不敏感。遵循相同的方法还是个好主意吗? 如何在SQL Server中进行区分大小写的比较? 为什么操作员默认不区分大小写的比较? 问题答案: 不可以,区分大小写与等号无关。 区分大小写由数据库的排序

  • 问题内容: 如何在JavaScript中执行不区分大小写的字符串比较? 问题答案: 最简单的方法(如果您不担心特殊的Unicode字符)是调用:

  • 问题内容: 如何在Python中进行不区分大小写的字符串比较? 我想以一种非常简单且Pythonic的方式封装对常规字符串与存储库字符串的比较。我还希望能够使用常规python字符串在由字符串散列的字典中查找值。 问题答案: 假设字符串:

  • 本文向大家介绍Objective-C语言不区分大小写与匹配子集的比较,包括了Objective-C语言不区分大小写与匹配子集的比较的使用技巧和注意事项,需要的朋友参考一下 示例