Лучший способ сохранить значения переменных в случае отключения питания?

Есть ли способ инициализировать значение по адресу памяти, отличному от определенного значения? У меня есть winform, которая открывается при запуске, и я хотел бы сохранить предыдущие записи пользователя. Моя (дрянная) идея состоит в том, чтобы встроить текстовый файл и прочитать значение из этого файла в соответствующие переменные? Есть ли более профессиональный / чистый способ делать то, что я хочу?

Чтобы было понятно, скажем, у меня есть переменная: string pet = "dog", Позже в программе пользователь изменит это значение, чтобы сказать "fish", Теперь я хочу сохранить это значение где-нибудь и сохранить его в случае отключения питания, чтобы при перезапуске программы переменная pet будет инициализирован к сохраненному значению памяти, "fish",

3 ответа

Решение

Хороший способ достичь того, что вы хотите, это использовать "Настройки"

После настройки вы можете установить их на уровне пользователя или приложения в своем коде следующим образом:

Properties.Settings.Default.Pet = "dog";
Properties.Settings.Default.Save();

https://msdn.microsoft.com/en-us/library/aa730869(v=vs.80).aspx

Сериализация объектов - это то, что вы ищете. Смотрите здесь для получения дополнительной информации.

Есть несколько способов сделать это в зависимости от ваших потребностей. Запись в / чтение из текстового файла является решением среди других.

Распространенный способ сделать это - сохранить его в реестре. Вот учебник, который хоть и немного устарел, но поможет вам с общей идеей:

Все, что вы хотели знать о реестре с C#

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

Другие вопросы по тегам