-4

这是一个有效的json

[{"id":1, "name":"foo"}, {"id":2, "name":"bar"}]

我如何TSuperObject从中创建一个string

4

2 回答 2

2

如果您readme.html在浏览器内部打开,您将在该文档的开头看到:

解析 JSON 数据结构

var
  obj: ISuperObject;
begin
  obj := SO('{"foo": true}');
  obj := TSuperObject.ParseString('{"foo": true}');
  obj := TSuperObject.ParseStream(stream);
  obj := TSuperObject.ParseFile(FileName);
end;
于 2014-09-02T12:33:19.133 回答
2

Delphi 6 有一个错误。

SO()函数试图转换字符串的值时,它会引发EIntOverflow.

该错误是由于此功能造成的:

class function TSuperAvlEntry.Hash(const k: SOString): Cardinal; 

这是谷歌问题跟踪器中的错误

错误报告者提出的解决方法是将函数更改为:

class function TSuperAvlEntry.Hash(const k: SOString): Cardinal;
var
  h: cardinal;
  i: Integer;
begin
  h := 0;
{$Q-}
  for i := 1 to Length(k) do
    h := Cardinal( h*129 + ord(k[i]) + $9e370001);
  Result := h;
end;
{$Q+}
于 2014-10-30T17:53:56.570 回答