Поиск в Интернете, я нашел много учебников для сохранения / загрузки данных программы в / из файлов. Тем не менее, я уже знаю это (я использую Python pickle
для сериализации / десериализации объектов).
Мой вопрос: как файлы должны отображаться пользователям? Особенно, если имеется несколько файлов, Я хочу отображать сводную информацию из каждого файла сохранения , чтобы пользователь мог выбрать, какой файл загрузить.
Некоторые варианты, которые я рассматриваю, следующие:
Загрузка всех сохраненных файлов, отображение информации о ключах.
Это самое простое решение, но я продолжаю думать, что должен быть лучший способ?
Сохранить метаданные сохраняемых файлов в другом файле.
Прочтите этот файл, чтобы отобразить ключевую информацию о каждом файле сохранения.
У меня вопрос: нужно ли беспокоиться о согласованности / целостности этого метафайла и реальных файлов сохранения? Например, если операция сохранения успешно обновляет файл сохранения игры, но игра вылетает до того, как метафайл может быть обновлен, данные будут повреждены.
Поместить метаданные в имя файла
Может работать, когда в метаданных всего несколько полей. Но разве это хорошая идея?
Поместить метаданные в качестве информации заголовка в файл
Затем прочитайте только часть заголовка для отображения. Однако я не знаю, как реализовать это, используя pickle
Я не создаю слишком большую игру, но я все еще надеюсь реализовать подход наилучшей практики. Поэтому я ищу простое глупое решение, не слишком сложное, но все же, надеюсь, чище / не так глупо, как вариант 1 выше.