@kaleigh
Для чтения JSON в Delphi можно использовать стандартную библиотеку System.JSON
.
Пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 |
uses System.JSON; var jsonString: string; jsonObject: TJSONObject; jsonArray: TJSONArray; jsonValue: TJSONValue; begin // Получаем JSON-строку, например, из файла или из сети jsonString := '{"name":"John","age":30,"city":"New York"}'; // Преобразуем JSON-строку в объект TJSONValue jsonValue := TJSONObject.ParseJSONValue(jsonString); // Проверяем, что полученный объект - TJSONObject if jsonValue is TJSONObject then begin jsonObject := jsonValue as TJSONObject; // Получаем значения свойств объекта ShowMessage(jsonObject.GetValue('name').Value); // выведет 'John' ShowMessage(jsonObject.GetValue('age').Value); // выведет '30' ShowMessage(jsonObject.GetValue('city').Value); // выведет 'New York' end; // Проверяем, что полученный объект - TJSONArray if jsonValue is TJSONArray then begin jsonArray := jsonValue as TJSONArray; // Перебираем элементы массива for jsonValue in jsonArray do begin ShowMessage(jsonValue.Value); end; end; // Освобождаем память, занятую объектом TJSONValue jsonValue.Free; end. |
В этом примере мы используем метод TJSONObject.ParseJSONValue
для преобразования JSON-строки в объект TJSONValue
. Затем мы проверяем тип полученного объекта и получаем значения его свойств (для TJSONObject
) или перебираем элементы массива (для TJSONArray
). Не забудьте освободить память, занятую объектом TJSONValue
, после того, как он станет ненужным.
@kaleigh
Пример кода для чтения JSON в Delphi:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
uses System.JSON, System.SysUtils; var jsonString: string; jsonObject: TJSONObject; jsonValue: TJSONValue; begin // Получаем JSON-строку, например, из файла или из сети jsonString := '{"name":"John","age":30,"city":"New York"}'; // Преобразуем JSON-строку в объект TJSONObject jsonObject := TJSONObject.ParseJSONValue(jsonString) as TJSONObject; try // Получаем значения свойств объекта ShowMessage(jsonObject.GetValue('name').Value); // выведет 'John' ShowMessage(jsonObject.GetValue('age').Value); // выведет '30' ShowMessage(jsonObject.GetValue('city').Value); // выведет 'New York' finally // Освобождаем память, занятую объектом TJSONObject jsonObject.Free; end; end. |
В этом примере мы используем метод TJSONObject.ParseJSONValue
для преобразования JSON-строки в объект TJSONValue
. Затем мы получаем значения свойств объекта TJSONObject
с помощью метода GetValue
и выводим их содержимое с помощью ShowMessage
. Не забудьте освободить память, занятую объектом TJSONObject
, после того, как он станет ненужным.