是否可以在运行时将XML文件修改并保存在程序内部,而不是作为外部文件

本文关键字:文件 内部 程序 外部 存在 保存 运行时 修改 XML 是否 | 更新日期: 2023-09-27 18:23:53

我试图寻找这个问题的答案,但没有找到,也许我没有使用正确的单词,但什么都没有找到。。也许是因为这不可能?

我想有一个XML文件,它将与树视图同步,并且会对树视图进行更改,这将影响XML文件,然后我需要保存它,但我不能让用户直接访问这个文件,所以我想用程序编译它,问题是,有可能以这种方式修改和保存XML吗?

非常感谢!

雷。

附加信息(或最后一个问题):

我可以在程序中以某种方式保存XML文档吗即使我要终止我的程序,将来也可以使用吗?(而不是作为用户可访问的XML文件?)"资源"呢我知道我可以XML文件/doc(?)在那里,但我是否可以修改并保留我会对它做什么改变?

是否可以在运行时将XML文件修改并保存在程序内部,而不是作为外部文件

总是有可能有人在复制文件,尤其是当他拥有管理权限时。如果你不想让用户通过编辑文件来扰乱文件,你可以考虑加密。或者在XML文件中添加某种校验和(不是作为标记,而是作为XML注释,这样解析器就会忽略它,但您仍然可以读取它并使用它来检查文件是否未被破坏)。加密会使文件无法读取;校验和将保持文件的可读性,但在没有检测的情况下很难对其进行更改。

什么是XML文件?我几乎可以肯定你指的是XML文档。

您可以将解析后的XML文档作为对象保存在内存中。然后,您可以根据自己的喜好修改文档树。我不知道你所说的"保存"是什么意思,但我确信你可以将对象保存为二进制格式或XML格式。树不会自动序列化为文件。

我建议您将XML保留为内存中的文档树,在完成修改之前不要将其写入文件。这是否合理取决于您的应用程序。

在修改树时,您希望维护文件的原因是什么?也许您正在构建一个XML编辑器?

编辑:还有一个选项:将XML保存在数据库中。您甚至可能有一个XML类型的列,这取决于您拥有的数据库。即使程序崩溃,它也应该是安全的。

相关文章: