Обновление части информации в Json файле

Общие вопросы о Unity3D

Обновление части информации в Json файле

Сообщение Balphagore 20 янв 2021, 22:35

Храню информацию различного рода в Json файле. С самой сериализацией в обе стороны вроде разобрался. Теперь возник вопрос - что делать если мне надо обновить только кусок файла.
Например есть вот такой файл:
Синтаксис:
Используется csharp
{
    "objectsCount": 2,
    "objectsData": [
        {
            "id": 0,
            "blocksCount": 0,
            "blocksData": [ ]
        },
        {
            "id": 1,
            "blocksCount": 0,
            "blocksData": [ ]
        }
    ]
}

Сейчас я если хочу обновить только одну из записей об объекте я загружаю весь файл через
Синтаксис:
Используется csharp
string json = File.ReadAllText(path);
ObjectsLibraryDataModel objectsLibraryData = JsonUtility.FromJson<ObjectsLibraryDataModel>(json);

меняю в нем какую-то запись, обращаясь конкретно к ней, а затем снова пишу все в файл.
Синтаксис:
Используется csharp
string json = JsonUtility.ToJson(objectsLibraryData, true);
File.WriteAllText(path, json);

То есть если мне надо поменять какое-то одно значение я полностью загружаю весь файл, а потом весь его перезаписываю.
Можно ли выгружать и сохранять файл частично? А то такая полная перезапись выглядит излишней.
Balphagore
UNIт
 
Сообщения: 84
Зарегистрирован: 04 июл 2019, 13:00

Re: Обновление части информации в Json файле

Сообщение 1max1 21 янв 2021, 09:06

Если не ошибаюсь, то тебе надо это https://www.newtonsoft.com/jsonschema
Аватара пользователя
1max1
Адепт
 
Сообщения: 5505
Зарегистрирован: 28 июн 2017, 10:51


Вернуться в Общие вопросы

Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 22