grot писал(а):Не в силах удержаться от комментариев и вмешаться в дискуссию...
С помощью fcl-json можно записать все , что угодно и как угодно в формат JSON
и прочитать все, что угодно из формата JSON. Это просто транспорт - средство ПЕРЕНОСА данных.
Вы пытаетесь начинать что-то интерпритировать, что правильно / что неправильно - это не задача транспортного уровня !
Прочитали данные во что угодно - а дальше делайте с ними все , что пожелаете,
но уже за пределами JSON ...
Да, слово как угодно подразумевает удаление гланд через ...
Тогда пример будьте добры, для
- Код: Выделить всё
{ "tovar" : 18, "kolvo" : 2, "tovar" : 36, "kolvo" : 2, "tovar" : 123, "kolvo" : 2, "tovar" : 162, "kolvo" : 2, "tovar" : 180, "kolvo" : 2 }
прочитать и записать средствами fcl-json. И да, JSON и XML хороши тем, что к полям объекта можно обращаться по именам. Может сможете чтение и запись организовать с помощью использования имен полей tovar и kolvo?
grot писал(а):Это просто транспорт - средство ПЕРЕНОСА данных.
Данные выглядят следующим образом:
Type tovardata = record
tovar: integer;
kolvo: integer;
end;
Данные образуют одну сущность {tovar,kolvo}, оно даже на физическом уровне разложено в по ящикам.
Для переноса данных логично сущности организовать в массив [{},{},{}], разве нет? И тот кто получает данные должен как-то это всё прочитать без танцев с бубном, если понадобится передать приложению на Go, например там бы JSON с массивом легко распарсился в массив структур, вот указанную запись то-же не читает.
И потом, скажите, какой смысл тогда в массиве вот тут? Чтобы просто он был ради себя самого?
- Код: Выделить всё
{ "result" : [{ "tovar" : 18, "kolvo" : 2, "tovar" : 36, "kolvo" : 2, "tovar" : 123, "kolvo" : 2, "tovar" : 162, "kolvo" : 2, "tovar" : 180, "kolvo" : 2 }] }
Если в массиве будет всегда один элемент? Почему не вот так тогда? Какой смысл в таких извращениях? Полная некомпетентность?
- Код: Выделить всё
{ "result" : { "tovar" : 18, "kolvo" : 2, "tovar" : 36, "kolvo" : 2, "tovar" : 123, "kolvo" : 2, "tovar" : 162, "kolvo" : 2, "tovar" : 180, "kolvo" : 2 } }
JSON для того и выбирают, чтобы где угодно легко работать с данными, но если использовать как угодно, тогда какой смысл в нем вообще? Если нет возможности обращаться к данным по именам полей, то можно было бы и без json все просто одной строкой через запятую 18,2,36,2,123,2,162,2. Так ведь данные на транспортном уровне ещё проще перенести, букв меньше а парсить проще чем тот самый JSON.
JSON хорош тем, что получив его, можно обращаться к полям сущности по имени, работать с массивом как с набором данных, а когда используется принцип как угодно, этот становится невозможным, в примере у сущности всего 2 поля tovar и kolvo, а представьте если там десятки полей, какой бы геморрой из этого возник? Вот бы СДЭК или Почта России организовала передачу данных о посылках в JSON по принципу Как угодно, вот это был бы цирк.