2014-08-28 58 views
1

一个便携式程序是否可以在应用程序中保存数据? 我不希望程序创建文件夹或文件。将数据保存到程序中?

+0

你可以使用数据库 – nbro 2014-08-28 03:54:12

+0

@ usar这意味着它在服务器中的主机.. 我不认为我能承受这样的责任.. – Edenia 2014-08-28 03:54:30

+0

你可以有一个本地数据库,但我不熟悉数据库C,我不能帮助你更多的宝贝;)也许别人可以帮助你更多,否则在网络上的研究可以帮助你更多;) – nbro 2014-08-28 03:56:49

回答

1

为了以便携的方式进行操作,您不应该对体系结构或操作系统有任何假设:您可能有可能无法访问可执行文件(可能是argv[0],但它可能不是't。如果你有权访问可执行文件,你可以有权打开文件并对其进行修改,但也许你做不到。

如果无论如何,你想尝试它,你可以:

  • 检查argv[0]是否是一个文件,您有读取和写入权限,如果它确实是您的代码(正在寻找例如,对于随机字符串,您可以将其留在代码中的某处)。

  • 选择一个字符串来标记您的修改,例如“Edenia”,然后检查该文件的最后几个字节是否是那些字符。如果是这样,该文件先前已被修改,并且您可以读取您的数据进程。

  • 当您想要存储其他数据时,将其添加到文件末尾(如果尚未修改),或者替换它所做的修改。不要忘记在文件末尾添加标记(“Edenia”,或其他)。

无论如何,我仍然认为这不是存储数据的正确方法:尽可能使用外部存储(文件,数据库等)。

+0

我不是要求任何“适当的”方法。我正在寻求一些特别的东西。但是,如果你的答案是正确的,它是丰富的,我+1它。 – Edenia 2014-08-28 17:07:22