2015-11-27 3 views
0

Как я могу вставить или добавить новое поле в файл JSON? Я использую lkjson btw.Вставить новое поле в файл JSON

var 
    js: TlkJSONobject; 
    val : String; 
begin 
    js := TlkJSONstreamed.loadfromfile(jsonFile) as TlkJsonObject; 
    try 
    try 
     val := js.Field['users'].Field[username].Field[value5].Value; //field value5 doesnt exist 
    except 
     //add field 

    end; 
    TlkJSONstreamed.SaveToFile(js, jsonFile); 
    finally 
    js.Free; 
    end; 
end; 
+0

Если вы хотите, чтобы этот ленивый подход с неявным творением, я думаю, вам следует использовать библиотеку SuperObject. Хотя это может быть несколько медленнее./http://stackoverflow.com/questions/16790006/http://stackoverflow.com/questions/7731833 –

ответ

0

Как это:

(js.Field['users'].Field[username] as TlkJSONobject).Add(value5, '1'); 

Где users и username существуют.

+0

Поскольку данные могут быть не такими, как вы ожидаете, рекомендуется выбрать тип cast, замените 'TlkJSONobject (...) 'с' (... как TlkJSONобъект) '. –

+0

@DavidH ты действительно сказал, что Мастер О :-) – fantaghirocco

Смежные вопросы