2016-02-16 2 views
0

Я пытаюсь разработать небольшую игру в Libgdx/Java :) Но до того, как я внедрил систему сохранения, у меня возникли некоторые вопросы:Java | Сохранить данные игры в файле/Загрузить его

Я часто вижу, не всегда см., что в играх хранятся переменные игры в файлах. И я уже знаю, как сохранить свои данные в XML-файл ... который выглядит так:

<?xml version="1.0" encoding="UTF-8"?> 
<Word>Hello</Word> 

Но что эффективнее? Или есть ли лучшие методы для сохранения данных в файлах? И стоит ли хранить данные в файлах? Другой вопрос: как загрузить этот материал из этого файла выше? И, например, если я хочу загрузить Word «Hello» в String ... как это сделать?

Я нашел некоторые интересные сообщения, но они не работают, может быть, они устарели:/

Heres одно: Java: How to read and write xml files?

+0

Dont использовать DOM, так как для создания древовидной структуры требуется слишком много памяти, если исходный xml большой, посмотрите здесь больше ef ficient способами: http://stackoverflow.com/questions/373833/best-xml-parser-for-java?rq=1 – ritesht93

+0

Хорошо спасибо :) Как насчет XStream? Я думаю, что его легко создать xml-файлы с ним ... но вы не можете загрузить данные – genaray

+0

для потокового чтения, вы можете использовать «woodstox», который является парсером «stax» и имеет значительное количество конфигураций эффективности, и да, это автоматическая сериализация/библиотеки десериализации проще и эффективнее, поскольку мой googling говорит, что 'xstream' имеет загрузочный объект http://tomaszdziurko.pl/2013/04/xstream-xstreamely-easy-work-xml-data-java/, i 'd также предлагаю использовать 'xstream' или любую другую lib, такую ​​как' gson', и иметь исходный источник как 'json',' json', являющийся легким wrt 'xml' http://stackoverflow.com/questions/12346349/why -is-json-more-lightweight-than-xml – ritesht93

ответ

0

Вы можете использовать Предпочтения:

Preferences prefs = Gdx.app.getPreferences("My Preferences"); 
    prefs.putString("name", "Donald Duck"); 
    String name = prefs.getString("name", "No name stored"); 

    prefs.putBoolean("soundOn", true); 
    prefs.putInteger("highscore", 10); 

нашел его здесь: https://github.com/libgdx/libgdx/wiki/Preferences

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