我有一个简单的json
{"200567175963759": { "pair": "esp_btc", "type": "sell", "amount": 2000000, "rate": 1E-08, "timestamp_created": "1498114417", "status": 0}}
我想在不创建任何新类的情况下解析它。我想让事情变得简单。
我正在使用jsonhelper类,我创建了自己来解析它。它基本上试图找到两个双引号之间的第一件事,得到200567175963759这是订单ID。获取参数只是在" pair"之间找到一些东西:"和"
对于简单的json,它工作正常。我怎样才能获得订单ID,使用更好的解析器,例如newtonsoft来获取订单ID,或者使用时间戳。
我想知道我是否可以使用newtonsoft json做到这一点?
Dim jsonstring = jsonHelper.stripWhiteSpace(order3.ToString) '{"200567175963759": { "pair": "esp_btc", "type": "sell", "amount": 2000000, "rate": 1E-08, "timestamp_created": "1498114417", "status": 0}}
Dim orderid = fGetToken(order3.ToString, 1, """", """")
Dim base = b
Dim quote = key
Dim typeOfOrder = jsonHelper.getParameter(jsonstring, "type")
Dim amount = jsonHelper.getParameter(jsonstring, "amount")
Dim rate = jsonHelper.getParameter(jsonstring, "rate")
Dim timestamp_created = jsonHelper.getParameter(jsonstring, "timestamp_created")
Dim order4 = OrdersAtExchange.createOrders(amount, base, quote, _exchange, timestamp_created, rate, orderid)
_orders.Add(order4)
如果我尝试使用newtonsoft解析它,我得到了这个类型为
的对象 Dim order = Newtonsoft.Json.JsonConvert.DeserializeObject(jsonorders)
Dim order1 = CType(order, Newtonsoft.Json.Linq.JObject)
Dim order2 = order1.Item("return").ToList
我看看Newtonsoft.Json.Linq.JObject中的所有方法我找不到任何说json中的字典结构转换为generic.dictionary
有类似的东西。我尝试过,但根本没有工作。
所以我想知道是否有一些代码用newtonsoft解析那个简单的json?
答案 0 :(得分:1)
对象是类型字典,如果属性看起来像索引或键,它可能是字典
Dim JsonString As String = "{""200567175963759"": { ""pair"": ""esp_btc"", ""type"": ""sell"", ""amount"": 2000000, ""rate"": 1E-08, ""timestamp_created"": ""1498114417"", ""status"": 0}}"
Dim JsonSettings = New Newtonsoft.Json.JsonSerializerSettings
JsonSettings.NullValueHandling = Newtonsoft.Json.NullValueHandling.Ignore
Dim OutObject = Newtonsoft.Json.JsonConvert.DeserializeObject(Of Dictionary(Of String, SampleType))(JsonString)
Class SampleType
Property pair As String
Property type As String
Property amount As String
Property rate As String
Property timestamp_created As String
Property status As String
End Class
答案 1 :(得分:0)
以下示例展示了如何使用Json.Net的LINQ-to-JSON API(JTokens,JObjects等)解析JSON
akka.persistence.journal.plugin="akka.persistence.journal.leveldb"
akka.persistence.snapshot-store.plugin="akka.persistence.snapshot-store.local"
akka.persistence.journal.leveldb.dir="target/sample/leveldb"
akka.persistence.snapshot-store.local.dir="target/sample/snapshots"
akka.persistence.journal.leveldb.native=off