AddElement(Value: IJsonElement): IJsonArrayBuilder;
Value. Элемент JSON-структуры.
Метод AddElement добавляет существующий элемент в JSON-массив.
Для выполнения примера предполагается наличие JSON-файла «d:\Work\Json\data.json». Файл имеет примерно следующую структуру:
Sub UserProc;
Var
Doc: IJsonDocument;
JSONArray: IJsonArray;
NewArray: IJsonArrayBuilder;
NewJSON: IJsonObjectBuilder;
i, c: Integer;
Begin
Doc := New JsonDocument.Create;
Doc.ReadFromFile("d:\Work\Json\data.json");
JSONArray := Doc.Root.Query("$.product[?(@.price > 150 &&
@.price < 350)]");
c := JSONArray.Count;
// Создание новой JSON-структуры
NewArray := New JsonArrayBuilder.Create;
For i := 0 To c - 1 Do
NewArray.AddElement(JSONArray.Item(i));
End For;
NewJSON := New JsonObjectBuilder.Create;
NewJSON.AddElement("Products", NewArray.Build);
// Сохранение
Doc.Root := NewJSON.Build;
Doc.WriteToFile("d:\Work\Json\products.json");
End Sub UserProc;
При выполнении примера из файла будет считана JSON-структура. К данной структуре будет выполнен запрос на отбор элементов в соответствии с указанным условием. На базе отобранных элементов будет создана новая JSON-структура, в которую отобранные элементы будут включены в виде массива. Полученная новая JSON-структура будет сохранена в новый файл.
См. также: