2

从字符串创建 SuperObject 时,字符串可能不是有效的 JSon。不幸的是,在这种情况下,命令 SO 不会引发异常。我最终得到了一个我认为可以在其中存储数据的对象,但是“存储的”数据无处可去并且丢失了。

例子:

 MySo:=SO('{}');
 MySO.S['ok']:='test';
 Memo1.Lines.Add(MySO.AsJSon(True, False));

 MySo:=SO('');
 MySO.S['fail']:='mimimi';
 Memo1.Lines.Add(MySO.AsJSon(True, False));  // returns '""' ??!??

如何检查字符串是否已成功转换为有效且工作的 SuperObject?

4

1 回答 1

1

whorsyourdaddy 的评论指出了正确的方向。

为了能够将 INTO 存储为 JSON,您需要一个 stObject。您可以通过以下方式检查:

 if not MySo.IsType(stObject) then raise....
于 2018-07-25T10:21:45.910 回答