可能重复:
如何在资源中存储设置
我有一条包含字符串、整数等的记录。该记录用作稍后读取的文件的设置。如何将记录转换为二进制数据(或字符串)并将其保存为 RCDATA 并将其读回记录?如果可能,仅限本机代码和/或 WinAPI。谢谢你的帮助。
可能重复:
如何在资源中存储设置
我有一条包含字符串、整数等的记录。该记录用作稍后读取的文件的设置。如何将记录转换为二进制数据(或字符串)并将其保存为 RCDATA 并将其读回记录?如果可能,仅限本机代码和/或 WinAPI。谢谢你的帮助。
关于 RCDATA:
我问谷歌“资源编辑器开源delphi”,它告诉我http://melander.dk/reseditor/
这个程序肯定可以读写资源。
该页面的页脚还包含指向另外三个同样可以执行此操作的开源 delphi 程序的链接。
所以我希望你能在那里找到你需要的东西。在一堆其他有用的代码中:-)
但是 - 你想用什么 RCDATA ???什么文件?一些DLL?还是您自己的项目 EXE?RCDATA 用于读取,而不是写入。这不是典型的用途。如果加载了 DLL 或 EXE - 您将无权写入文件 new RCDATA。而你自己运行的 EXe 始终是打开的。
关于转向二进制 - 这非常依赖于您使用的数据类型。在您显示数据之前 - 没有人能够肯定地告诉您。
大多数懒惰的方法是:1)从 TComponent 制作镜像类,并发布属性镜像记录字段。从记录中分配这些属性并执行 TComponent.SaveToStream。2) 使用 Progdigy 的 JsonObject 制作 JSon 格式的文本文件 3) 使用一些 XML 来保存/读取。例如,更高版本的 Delphi 中的 TXMLDocument(但如果使用 nil Owner 创建它有其陷阱)或 Jedi CodeLib 具有 XML。
您可以在 Torry.net 上搜索大量 XML 或 JSON 库。
但最重要的是 - 谷歌“在 Delphi 中序列化”并找到详细说明问题和解决方案的教程。