Если вы ищете простой, у меня есть два слова для вас: binary serialization.
Возможности сериализации, встроенные в .NET Framework, являются прекрасными для таких задач, когда вы просто хотите вытолкнуть некоторые из данных экземпляра вашей программы на диск, не беспокоясь о том, чтобы написать кучу кода самостоятельно.
Поскольку вы не беспокоитесь о том, что придерживаетесь любого открытого или стандартного формата данных, нет никакой пользы для сериализации XML. Просто выберите пользовательское расширение файла, которое будет использоваться для вашего приложения (желательно тот, который еще не используется большинством других), помните, что вам необязательно ограничивать себя всего тремя символами), а затем связать это расширение с вашим приложением в оболочки Windows.
Конечно, это ничего не сделает для шифрует данные. Кто-то все еще может открыть ваш файл данных в Блокноте и посмотреть его содержимое, но они не будут очень красивыми. Это не удобочитаемый формат данных, но он не обязательно безопасен. Ваш вопрос неоднозначен относительно того, требуется ли это.
EDIT: Я вижу, что вы добавили комментарий, который предпочел бы зашифровать ваши данные. Нет проблем. Принятый ответ на этот вопрос предлагает способ сделать это в сочетании с двоичной сериализацией: How to encrypt and save a binary stream after serialization and read it back? По сути, вы хотите использовать CryptoStream
class для обработки шифрования/дешифрования.
Я хотел бы создать свой собственный формат файла для этого приложения (и механизм шифрования), можете ли вы мне рассказать об этом? – Voldemort