2015-11-21 170 views
-1

我有一個JSON字符串是這樣的:Golang JSON解析

{ 
"offset":4224368, 
"fcn_addr":4224368, 
"fcn_last":4224408, 
"size":2, 
"opcode":"add byte [rax], al", 
"bytes":"0000", 
"type":"add", 
"type_num":17, 
"type2_num":0, 
"flags":[ 
"entry0", 
"sym._start", 
"section_end..plt", 
"section..text" 
], 
"comment":"WzEzXSB2YT0weDAwNDA3NTcwIHBhPTB4MDAwMDc1NzAgc3o9MTA5OTE4NiB2c3o9MTA5OTE4NiByd3g9LXIteCAudGV4dA==" 
}, 
{ 
"offset":4224370, 
"fcn_addr":4224368, 
"fcn_last":4224408, 
"size":2, 
"opcode":"add byte [rax], al", 
"bytes":"0000", 
"type":"add", 
"type_num":17, 
"type2_num":0 
}} 

和我創建了一個結構

type DisassembleOutput struct { 
    offset, fcn_addr, fcn_last, size int 
    opcode, bytes string 
} 

我只是想這JSON保存到這樣一個結構。 所以問題是在編碼/ json lib解編,我無法得到它的工作(錯誤總是無法將json數據解組成main.Disas結構)。 我是一個golang新手btw。

編輯:

這實際上是問題http://play.golang.org/p/cpYsnXa-b9。 如何分析一個個項目弗洛姆[{...}]

回答

1

Export用大寫字母開始他們的字段名稱:

type DisassembleOutput struct { 
    Offset, Fcn_addr, Fcn_last, Size int 
    Opcode, Bytes     string 
} 

playground example

+0

那是有幫助的,謝謝!還有一件事,如果json像這樣[[samejson here}],我該怎麼辦?再次感謝! –

+0

我已經更新了有關我最後一條評論的實際問題,並且更新了關於play golang的代碼,這裏是鏈接http://play.golang.org/p/cpYsnXa-b9 –

+1

您在操場上的示例不是有效的JSON,因爲錯誤消息指示。不知道有什麼打算。 –