2015-06-10 6 views
0

Мне это сложно объяснить, поэтому позвольте мне привести всего лишь пример.Как я могу использовать объекты JSON более одного раза?

Скажите, что вы создаете игру и хотите хранить информацию о списке навыков, таких как: кузнечное дело, столярные изделия и т. Д. Затем у вас есть список предметов, которые можно сделать, относящиеся к навыкам: медный кинжал , деревянная доска и т. д. И каждый из этих предметов имеет несколько разных ингредиентов, которые содержат другую информацию, такую ​​как количество.

Как вы собираетесь хранить эту информацию с использованием JSON в аккуратном формате, учитывая, что некоторые элементы могут иметь одинаковые ингредиенты?

{"skill":[ 
    "blacksmithing":{ 
    "items":[ 
     {"copper dagger":{ 
     "ingredients":[] // this where i get lost because i feel like its too complicated after this point 
     }}, 
     // and so on 
     ] 
    }, 
    "carpentry":{ 
    "items":[] 
    } 
]} 

Я никогда не создавал файлы JSON, поэтому я не уверен, что я делаю это правильно. Я даже не знаю, подходит ли JSON для этого. Я просто пытаюсь создать приложение iOS и веб-приложение, которое будет считывать эту информацию, анализировать ее и создавать объекты соответственно.

+0

Нет такой вещи, как объект JSON – Petar

+0

Технически вы правы. Но в великой схеме вещей я хочу превратить их в объекты через любой язык, который я решил использовать. – johnslay

ответ

1

Таким образом, вы можете попробовать: - (вместо того, чтобы «медный крестик» в качестве отдельного объекта, вы можете поместить его как ключ-значение пару с «именем» в качестве ключевого & «медь кинжала» в качестве значения)

"blacksmithing":{ 
"items":[ 
    {"name" : "copper dagger", "ingredients":[{}, {}]}, 
    // and so on 
    ] 
}, 
+0

Спасибо, я знал, что я делаю что-то неправильно. Что делать, если ингредиенты другого предмета одинаковы для этого предмета. Есть ли способ связать их, а не иметь избыточность? – johnslay

0

Рассматривали ли вы с помощью DocumentDirectory, чтобы сохранить .plist файл или .json файл, сохранив там настойчив, вы можете легко получить сохраненную информацию в массиве с помощью чтения файла, как:

NSArray arrayWithContentsOfFile 

Вы можете легко найти дополнительную информацию об этом методе либо здесь, либо в стеке, либо в документации на яблоки. Просто подведем итог: вам нужно назначить файловый менеджер, затем получить путь к DocumentDirectory, а затем сохранить необходимый файл с помощью FileManager в этом каталоге.

+0

Спасибо. Я посмотрю на это. Мне нравится изучать новые подходы к проблемам. – johnslay

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