0

您好,在我成功将元数据解析为 excel 后,我现在面临将其解析回与 Cardano 区块链兼容的 Metadata.JSON 的挑战

但不幸的是我无法适应正确的元数据结构

那应该是:

 {
  "721": {
    "policy": {
      "tokenname": {
        "country": "1",
        "test": "123"
      },
      "tokenname": {
        "country": "1",
        "test": "123"
      }
    }
  }
}

这就是我目前的状态: 我的代码和结果

Sub live_json()
Dim rng As Range, items As New Collection, myitem As New Dictionary, subitem As New Dictionary, i As Integer, cell As Variant
'Set rng = Range("A2:A3")
'Set rng = Range(Sheets(2).Range("A2"), Sheets(2).Range("A2").End(xlDown)) use this for dynamic range

   Set abc = New Collection
    abc.Add ("721")
    
For a = 0 To 2
    subitem("country") = "123"
    subitem("test") = "123"
    myitem.Add "tokenname", subitem
    items.Add myitem
    Set myitem = Nothing
    Set subitem = Nothing
Next

    abc.Add items

MsgBox (ConvertToJson(abc, Whitespace:=2))
End Sub

我想我快到了

4

1 回答 1

0

这对我有用:

Sub live_json()
    
    Dim root As Dictionary, k As Dictionary, a As Long

    Set root = New Dictionary
    Set k = New Dictionary
   
    root.Add "721", k
    k.Add "policy", New Dictionary
    Set k = k("policy")
   
    For a = 0 To 2
        k.Add "tokenname" & a, New Dictionary
        With k("tokenname" & a)
            .Add "country", "1"
            .Add "test", "123"
        End With
    Next

    Debug.Print ConvertToJson(root, Whitespace:=2)
End Sub
于 2021-12-14T23:41:19.800 回答