这是一个有效的json
:
[{"id":1, "name":"foo"}, {"id":2, "name":"bar"}]
我如何TSuperObject
从中创建一个string
?
这是一个有效的json
:
[{"id":1, "name":"foo"}, {"id":2, "name":"bar"}]
我如何TSuperObject
从中创建一个string
?
如果您readme.html
在浏览器内部打开,您将在该文档的开头看到:
var
obj: ISuperObject;
begin
obj := SO('{"foo": true}');
obj := TSuperObject.ParseString('{"foo": true}');
obj := TSuperObject.ParseStream(stream);
obj := TSuperObject.ParseFile(FileName);
end;
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+}