我有一些带有一些文本框的应用程序。我的用户填写文本框并运行一些方法,当他们关闭应用程序数据时(通常)丢失。
我想保留几个文本框和一些局部变量的值。使用database
并不值得,简单的.txt
文件不够干净,是否有其他简单而简洁的方法可以在应用程序运行之间存储少量数据?
我不确定但是听过一些关于资源文件的瑕疵,它们对这种情况有好处吗?
答案 0 :(得分:17)
最简单的方法是将文本框绑定到application settings:
FormClosed
事件保存应用程序设置保存设置:
private void Form_FormClosed(object sender, FormClosedEventArgs e)
{
Settings.Default.Save();
}
下次当用户启动您的应用程序时,将从用户特定文件加载设置,并且文本框将填充与用户上次关闭应用程序之前相同的数据。
同样在应用程序设置中,您可以存储本地变量,但您必须手动为它们添加设置,并在应用程序启动时手动读取该设置:
var x = Settings.Default.MyCounter
Settings.Default.MyCounter = x
之前,Settings.Default.Save()
答案 1 :(得分:1)
您可以使用以下
1-基于MS-ACCESS的本地数据库,可以存储小占用空间。
2-使用字典,在硬盘上进行Serilize / Deserilize(使用FileSystem)
3-将其存储在Windows注册表中
答案 2 :(得分:1)
有几个选项,但是对于大多数选项,你将把文件放在某处,无论是文本文件,资源/配置还是二进制文件。
使用设置是一个选项:http://www.codeproject.com/Articles/17659/How-To-Use-the-Settings-Class-in-C
您也可以采用序列化路线:http://msdn.microsoft.com/en-us/library/vstudio/et91as27.aspx
或者您可以查看像MongoDB这样的noSQL数据库:http://www.mongodb.org/
答案 3 :(得分:0)
假设您使用的是Windows(如标签所示),您是否考虑过注册表?