当先锋百科网

首页 1 2 3 4 5 6 7

Delphi XE是一款强大的开发工具,它提供了多种功能,其中包括 JSON 解析。JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,通常用于 Web 应用程序中。在 Delphi XE 中,解析 JSON 数据非常简单。

var
json: TJSONObject;
name, age: string;
begin
json := TJSONObject.ParseJSONValue(TEncoding.UTF8.GetBytes('{"name":"tom","age":20}'), 0) as TJSONObject;
try
name := json.GetValue('name').Value;
age := json.GetValue('age').Value;
ShowMessage('Name: ' + name + ', Age: ' + age);
finally
json.Free;
end;
end;

在上述代码示例中,我们通过使用 TJSONObject.ParseJSONValue 函数,将 JSON 字符串解析为一个 TJSONObject 对象。然后,我们可以使用 GetValue 方法获取 JSON 数据中的各个字段值。在本例中,我们获取了 name 和 age 字段的值,并在 ShowMessage 函数中显示了它们的值。

在 Delphi XE 中,也可以使用 TJsonTextReader 类来解析 JSON 数据。下面是一个简单的示例:

var
reader: TJsonTextReader;
name, age: string;
begin
reader := TJsonTextReader.Create(TStreamReader.Create('{"name":"tom","age":20}'));
try
while reader.Read do
begin
if (reader.TokenType = TJsonToken.PropertyName) and (reader.Value.ToString = 'name') then
begin
reader.Read;
name := reader.Value.ToString;
end
else if (reader.TokenType = TJsonToken.PropertyName) and (reader.Value.ToString = 'age') then
begin
reader.Read;
age := reader.Value.ToString;
end;
end;
ShowMessage('Name: ' + name + ', Age: ' + age);
finally
reader.Free;
end;
end;

在上面的代码示例中,我们使用 TStreamReader 类读取 JSON 字符串,然后使用 TJsonTextReader 类解析 JSON 数据。代码通过循环遍历所有 JSON 数据节点,并使用 TokenType 和 Value 属性获取各个字段的值。

总之,在 Delphi XE 中,解析 JSON 数据非常简单。我们可以使用 TJSONObject 或 TJsonTextReader 类来解析 JSON 数据,并方便地获取 JSON 数据中每个字段的值。