正如标题所示,我试图使用Delphi 7和SuperObject Library从一个非常简单的结构化JSON文件中提取一个值,但我还没有找到任何涵盖这个最基本主题的例子,并希望有些大师这里或许可以给我一些帮助。
我所拥有的是一个简单的JSON文件(名为test.json),它具有以下结构,我想知道的是如何在delphi中加载此文件,然后从中提取“姓氏”的值提供的信息。
我确信这是一项非常简单的任务,但正如我之前所述,我无法找到任何关于如何做到这一点的例子,并希望得到一些帮助。
示例JSON文件
{
id: 212,
first_name: "bob",
last_name: "smith",
age: 25
}
答案 0 :(得分:2)
首先,在这种情况下声明对象的实例,作为ISuperObject
接口。然后,使用TSuperObject.ParseString
或甚至SO
分配它来解析您的JSON字符串。然后,您可以使用单字母属性读取值,具体取决于您正在阅读的值的类型...
var
O: ISuperObject;
ID, Age: Integer;
FirstName, LastName: String;
begin
O:= SO(MyJsonString);
ID:= O.I['id'];
FirstName:= O.S['first_name'];
LastName:= O.S['last_name'];
Age:= O.I['age'];
end;
请注意,Stack Overflow上的内容通常不会这样。我回答的唯一原因是因为它快速而简单,而且因为你似乎是新来的。关于如何使用SuperObject,有很多资源;在您使用库下载的演示中,遍布Google,以及Stack Overflow中的演示文稿。
答案 1 :(得分:0)
接下来是我的例子
function GetLastName(const FileName: string): string;
var
O: ISuperObject;
begin
// transport json file to superobject;
O:= TSuperObject.ParseFile(FileName, False);
// get value of object memeber
result:= O['last_name'].AsString;
end;