当前位置: 首页 > 知识库问答 >
问题:

错误消息:未为字符串“”定义运算符“”,并键入“Dictionary(Of string,Object)”

鲜于璞瑜
2023-03-14

尝试反序列化JSON对象时收到此错误消息

错误消息

操作符未为字符串“JPY:”定义,并且键入字典(Of String, Object)

下面是我试图反序列化的json对象

{"JPY":{"7d":"6510.92","30d":"4434.76","24h":"7027.46"},"USD":{"7d":"65.09","30d":"48.77","24h":"74.26"},"AUD":{"7d":"64.99","30d":"49.10","24h":"71.91"},"CHF":{"7d":"66.86","30d":"58.14","24h":"69.57"},"RUB":{"7d":"1896.79","30d":"1472.11","24h":"2206.51"},"时间戳": 1364257203,"THB":{"30d":"1100.31"},"CNY":{"7d":"417.58"":"16719.16","30d":"11865.62","24h":"19185.45"},"DKK":{"7d":"388.47","30d":"350.27","24h":"436.34"},"BRL":{"7d":"166.21","30d":"106.56","24h":"182.34"},"ILS":{"7d":"236.79","30d":"218.19","24h":"259.00"},"GBP":{"7d":"44.16","30d":"31.73","24h":"49.22"},"NZD":{"7d":"80.21","30d":"59.29","24h":"88.60"},"PLN":{"7d":"218{"7d":"68.76","30d":"50.16","24h":"76.43"},"SEK":{"7d":"445.63","30d":"315.11","24h":"510.58"},"SGD":{"7d":"87.88","30d":"61.97","24h":"93.35"},"HKD":{"7d":"550.10","30d":"396.68","24h":"571.82"},"EUR":{"7d":"51.85","30d":"38.65","24h":"58.69"}}

这是我的代码

Dim js As New System.Web.Script.Serialization.JavaScriptSerializer
    Dim testObj = js.Deserialize(rt, New Object().GetType())

    out = "JPY: " + testObj("JPY") + Environment.NewLine
    out += "7days: " + testObj("7d") + Environment.NewLine
    out += "30days: " + testObj("30d") + Environment.NewLine
    out += "24hours: " + testObj("24h")

共有1个答案

杨雪松
2023-03-14

请使用调试器,它可以显示反序列化对象的外观。这是一本字典字典,相当于VB。NET声明将是Dictionary(字符串的),Dictionary(字符串的,字符串的)。这就是正确的代码:

    Dim currency = testObj("JPY")
    out = "JPY: " + Environment.NewLine
    out += "7days: " + currency("7d") + Environment.NewLine
    out += "30days: " + currency("30d") + Environment.NewLine
    out += "24hours: " + currency("24h")
 类似资料:
  • 问题内容: 我得到这个错误 问题答案: 具有无效的返回类型。更改方法的返回类型以返回值

  • 问题内容: 我只是试图制作一个简单的类,让我弄清楚文件的长度: 我遇到了一个问题 我得到错误: 未为参数类型定义运算符!= int,null 有什么想法为什么会阻止这种情况吗? 问题答案: Java中的原始类型不能为。如果要检查0,请执行。

  • 我在条件运算符的true子句中得到了未定义属性的意外行为: 示例:Javascript: 不停摆弄 预期的行为是获取一个日志条目,上面写着"未定义,而是抛出了一个错误:。怎么会这样,对象被选中,它永远不会执行htis coe路径。一个工作示例是: 不停摆弄

  • 我想对我的数组使用。 提前致谢

  • 我不明白这个错误: TypeError:string是未定义的函数d3_time_parse(date,template,string,j){var c,p,i=0,n=template.length,m=string.length;... 这里是我的代码:

  • 目标 了解实例化 String 对象和设置其值的多种方法 了解字符串串联和方法链 熟悉 Java 语言的算术运算符 字符串 目前为止,您已经遇到过多种类型的 String。在 Java 语言中,字符串是 String 类型的一级对象,包含可帮助您处理它们的方法。 在 C 语言中,处理字符串需要大量精力,因为它们是您必须操作的 8 位字符组成的以 null 结尾的数组。(在字符串方面,与 C 语言最