Delphi REST.JSON是一款強大的JSON庫,用于解析和生成JSON數據。JSON是一種輕量級數據交換格式,被廣泛應用于Web應用程序和移動應用程序中,具有易于閱讀和編寫的結構。
// 使用Delphi REST.JSON生成JSON數據 var jsonObj: TJSONObject; jsonArray: TJSONArray; jsonValue: TJSONValue; begin jsonObj := TJSONObject.Create; jsonObj.AddPair('name', 'John'); jsonObj.AddPair('age', 25); jsonArray := TJSONArray.Create; jsonValue := TJSONString.Create('basketball'); jsonArray.Add(jsonValue); jsonValue := TJSONString.Create('reading'); jsonArray.Add(jsonValue); jsonObj.AddPair('hobbies', jsonArray); Memo1.Lines.Text := jsonObj.ToJSON; end;
在上面的示例中,我們創建了一個TJSONObject對象,并添加了name和age鍵值對,以及一個hobbies數組。我們還創建了一個TJSONArray對象,將字符串元素添加到數組中。最后,我們將TJSONObject對象轉換為JSON字符串,并將其輸出到Memo控件中。
// 使用Delphi REST.JSON解析JSON數據 var jsonObj: TJSONObject; jsonValue: TJSONValue; begin jsonObj := TJSONObject.ParseJSONValue(Memo1.Lines.Text) as TJSONObject; if jsonObj.GetValue('name')<>nil then begin ShowMessage('Name: ' + jsonObj.GetValue('name').Value); end; if jsonObj.GetValue('age')<>nil then begin ShowMessage('Age: ' + jsonObj.GetValue('age').Value); end; if jsonObj.GetValue('hobbies')<>nil then begin jsonValue := jsonObj.GetValue('hobbies'); if jsonValue is TJSONArray then begin ShowMessage('Hobbies: '); for jsonValue in TJSONArray(jsonValue) do begin ShowMessage('- ' + jsonValue.Value); end; end; end; end;
在上面的示例中,我們使用TJSONObject.ParseJSONValue方法將JSON字符串解析為TJSONObject對象。然后,我們檢查對象是否包含特定鍵,如果是,就獲取其值并進行相應的處理。如果值是一個數組,我們將其轉換為TJSONArray對象,并遍歷其中的元素。
Delphi REST.JSON還包括其他一些功能,如日期和時間格式化、Unicode和UTF-8編碼等。它易于使用和集成,是Delphi開發人員必備的工具之一。