我可以使用 Domino10 NotesJson 对象修改 JSON 树吗?
Can I modify a JSON tree using the Domino10 NotesJson objects?
我目前正在 LotusScript 中测试新的 Domino 10.0.1 NOTESJSON* 对象,看看我是否可以用它们替换当前使用的 openNTF JSON LS Classes。
因为几乎没有任何文档(还没有?)我有点摸不着头脑。
这是我的 JSON 树的简化版本:
[{
"unid": "9534A90AC433D729C1258384003350B5",
"description": "just kidding",
"content": [{
"unid": "ABAE2585498B4E05C125832F0046701B",
"company": "edcom"
}, {
"unid": "6C5F751CE39BF1B6C125832F0046701C",
"company": "ibm"
}
]
}
]
目的是用元素 "company":"ibm"
定位任何 "content" 对象,然后将其更改为 "company":"hcl"
。
问题是:我显然只能读取元素值(在 LotusScript 调试器中,我发现我拥有具有正确值和类型的正确元素)。不幸的是,LotusScript 编辑器没有提供任何更改值的方法,所以我尝试了这个:
Set nJsElem = vItems.GetElementByName("company")
If(nJsElem.Value = "ibm") Then
nJsElem.Value = "hcl"
End If
至少调试器在此之后没有显示任何变化。
更不用说我不知道如何根据该修改创建新的 JSON 字符串。
问题:这是不可能的(还是?),还是我看错了行尾?
确认。您可以使用 NotesJSONNavigator class 来解析 JSON 输入。从 10.0.1 开始,LotusScript 不支持构建、修改、序列化 JSON。
我目前正在 LotusScript 中测试新的 Domino 10.0.1 NOTESJSON* 对象,看看我是否可以用它们替换当前使用的 openNTF JSON LS Classes。
因为几乎没有任何文档(还没有?)我有点摸不着头脑。
这是我的 JSON 树的简化版本:
[{
"unid": "9534A90AC433D729C1258384003350B5",
"description": "just kidding",
"content": [{
"unid": "ABAE2585498B4E05C125832F0046701B",
"company": "edcom"
}, {
"unid": "6C5F751CE39BF1B6C125832F0046701C",
"company": "ibm"
}
]
}
]
目的是用元素 "company":"ibm"
定位任何 "content" 对象,然后将其更改为 "company":"hcl"
。
问题是:我显然只能读取元素值(在 LotusScript 调试器中,我发现我拥有具有正确值和类型的正确元素)。不幸的是,LotusScript 编辑器没有提供任何更改值的方法,所以我尝试了这个:
Set nJsElem = vItems.GetElementByName("company")
If(nJsElem.Value = "ibm") Then
nJsElem.Value = "hcl"
End If
至少调试器在此之后没有显示任何变化。
更不用说我不知道如何根据该修改创建新的 JSON 字符串。
问题:这是不可能的(还是?),还是我看错了行尾?
确认。您可以使用 NotesJSONNavigator class 来解析 JSON 输入。从 10.0.1 开始,LotusScript 不支持构建、修改、序列化 JSON。