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 數據中每個字段的值。
上一篇vue.js 搜索