2012-11-10 78 views
-3

我:提取单JSON值与Newtonsoft

[ 
    { 
    "account": "max", 
    "address": "1DjA7XoVkB8bKRzcf5oW2MFtyN92u3ssEu", 
    "category": "receive", 
    "amount": 0.1, 
    "confirmations": 290, 
    "blockhash": "000000000000040f883801bd432ae638258dd852e124f8db349a9a6afc0bd4 
df", 
    "blockindex": 139, 
    "blocktime": 1352407188, 
    "txid": "cee56f0aa97f9200e7fcb220861098bd74419cf5427e81b02870cb9baf063560", 
    "time": 1352407188, 
    "timereceived": 1352550395 
    } 
] 

什么是让TxID添加值的最快方法?我一直在尝试组合几个小时。

编辑:这是一个JArray C#对象,看起来像这样:

o = new JArray(o.First); 
return o["txid"]; 

返回一个错误

+0

使用SoapHexBinary它是字符串或JavaScript对象? – Rikki

+3

什么组合?什么没有用?你究竟坚持着什么? – Oded

+0

解析它以反对和像其他人一样获得价值? – sed

回答

1

在命名空间System.Runtime.Remoting.Metadata.W3cXsd2001

var jArr = JArray.Parse(json); 
var hex = SoapHexBinary.Parse((string)jArr[0]["txid"]); 
byte[] buf = hex.Value; 
1

如果代码临危作为字符串试试这个:

alert(eval('[{"account": "max","address": "1DjA7XoVkB8bKRzcf5oW2MFtyN92u3ssEu","category": "receive","amount": 0.1,"confirmations": 290,"blockhash": "000000000000040f883801bd432ae638258dd852e124f8db349a9a6afc0bd4 
df","blockindex": 139,"blocktime": 1352407188,"txid": "cee56f0aa97f9200e7fcb220861098bd74419cf5427e81b02870cb9baf063560","time":1352407188,"timereceived": 1352550395}]')[0]["txid"]); 

如果代码是一个javascript对象,试试这个:

var obj = [ 
    { 
    "account": "max", 
    "address": "1DjA7XoVkB8bKRzcf5oW2MFtyN92u3ssEu", 
    "category": "receive", 
    "amount": 0.1, 
    "confirmations": 290, 
    "blockhash": "000000000000040f883801bd432ae638258dd852e124f8db349a9a6afc0bd4 
df", 
    "blockindex": 139, 
    "blocktime": 1352407188, 
    "txid": "cee56f0aa97f9200e7fcb220861098bd74419cf5427e81b02870cb9baf063560", 
    "time": 1352407188, 
    "timereceived": 1352550395 
    } 
]; 

alert(obj[0]["txid"]); 

希望它有帮助。 干杯

+1

这是JavaScript,而不是C#/ Newtonsoft-JSON。 – 2012-11-10 18:35:15

+0

先生与所有人都尊重,这是你的问题使我误解了答案。顺便说一下,你说它会导致错误。您能否给我提供一些关于错误的信息? – Rikki

+0

关于对象不存在的东西 – Max0999