将数据存储在C#内部

8 浏览
0 Comments

将数据存储在C#内部

我对C#中的数据处理有一个问题。

这里有一个例子可以更清楚地说明问题:作为客户端的我需要将文件名写入一个程序,以便以后可以使用这些文件名。然而,我需要(在我的机器上)能够将这些文件名输入到一个从C#构建的控制台中,然后在程序内部处理这些文件名(因此不需要存储输入数据的文本文档),以便我可以将相同的应用程序副本发送到其他机器,而仍然记住这些文件名。

有没有办法在C#中实现这个功能?

非常感谢任何帮助。提前致谢!

0
0 Comments

问题出现的原因:用户希望在C#中存储数据,并希望这些数据在程序关闭后仍然存在。

解决方法:使用C#中的Settings来存储数据。

首先,打开项目属性并选择Settings。点击创建新的设置文件。可以在这里添加设置,也可以通过编程的方式添加。

示例代码如下:

static void Main(string[] args)
{
    //假设您添加了一个名为"FooSetting"的字符串设置,您可以像这样设置它:
    Properties.Settings.Default.FooSetting = "Some Value...";
    Properties.Settings.Default.Save(); //必须调用Save方法,否则设置不会持久保存
    //像这样读取值:
    Console.WriteLine(Properties.Settings.Default.FooSetting);
    Console.ReadKey();
}

通过使用Settings,用户可以在应用程序关闭后仍然访问和修改存储的数据。

0
0 Comments

问题的原因:

无法在运行中修改可执行文件,因为可执行文件是从代码编译而来的,将值保存到正在运行的可执行文件中没有意义。

解决方法:

可以将信息存储在二进制加密文件中,以提高安全性,或者可以使用数据库。有几种方法可以本地存储(即不需要数据库管理系统)。

以下是一个有用的SO贴子链接:[What is a good choice of database for a small .NET application?](https://stackoverflow.com/questions/6749556)

实际上,他实际上可以将数据存储在他的.exe文件中,例如,通过创建一个在主程序退出时启动并将二进制数据写入的“stub”进程。 (我知道这是一个肮脏的可怜的黑客,但我不得不自己做)=(

0