Delphi中的JSON數組是一種常見的數據結構,它可以用來表示一組有序的數據,這些數據可以是不同類型的。
JSON數組在Delphi中的表示方法是使用TJSONArray類,它繼承自TJSONValue,并且可以包含任意數量的TJSONValue對象。以下是一個簡單的示例:
var
MyArray: TJSONArray;
MyInt: TJSONNumber;
MyString: TJSONString;
begin
MyArray := TJSONArray.Create;
MyInt := TJSONNumber.Create(42);
MyString := TJSONString.Create('Hello, World!');
MyArray.Add(MyInt);
MyArray.Add(MyString);
// ...
end;
如上所示,我們可以使用TJSONArray.Create來創建一個新的JSON數組對象,然后使用TJSONArray.Add方法向其中添加元素。在上面的例子中,我們向數組中添加了一個整數和一個字符串。
使用TJSONArray類可以方便地序列化和反序列化JSON數據。以下是一個使用TJSONObject類和TJSONParser類來解析JSON數據的示例:
var
JsonData: string;
JsonObject: TJSONObject;
JsonArray: TJSONArray;
JsonValue: TJSONValue;
JsonParser: TJSONParser;
begin
JsonData := '{"name": "John", "age": 30, "hobbies": ["reading", "swimming", "travelling"]}';
JsonParser := TJSONParser.Create(JsonData);
try
JsonValue := JsonParser.Parse;
if JsonValue is TJSONObject then
begin
JsonObject := TJSONObject(JsonValue);
// ...
end
else if JsonValue is TJSONArray then
begin
JsonArray := TJSONArray(JsonValue);
// ...
end;
finally
JsonParser.Free;
end;
end;
如上所示,我們可以使用TJSONParser類來解析JSON數據,并將結果保存在TJSONValue對象中。如果JSON數據是一個對象,則可以使用TJSONObject類來訪問其屬性值;如果是一個數組,則可以使用TJSONArray類來訪問其中的元素。
在使用JSON數組時需要注意一些細節。例如,由于JSON數組中的元素可以是任意類型的,因此在讀取數組元素時需要進行適當的類型轉換。此外,在向JSON數組中添加元素時,也需要注意其類型,并確保其符合JSON標準。
上一篇vue 數據部分加載