gpt4 book ai didi

xml - Delphi:将对象流式传输到 XML,包括数组属性

转载 作者:数据小太阳 更新时间:2023-10-29 02:32:21 27 4
gpt4 key购买 nike

我们有一个巨大的数据对象结构,包含许多实际上是数组的属性。现在,我们需要将数据流式传输到 XML 文档。

为此,我们考虑使用 NativeXML要流式传输的组件。它使用同样用于 TComponent 流的机制。这工作得很好,只是它不流式传输索引属性。

有没有办法做到这一点,或者是否有能够做到这一点的组件?

最佳答案

索引属性不向 RTTI 公开(并且仍然不在 Delphi XE 中),并且它们也不由 TComponent 流式传输。

如果您想继续使用 TComponent 机制(或纯基于 RTTI 的流式传输),一种选择是使用 TCollection,它确实“作为数组”进行流式传输。但是,这对您的阵列施加了严格的限制,即。它们的容器必须是 TCollection 的子类,它们的项目必须是 TCollectionItem 的子类。

我不知道 NativeXML 组件,但如果它们基于 TWriter/TReader,另一个选择可能是使用 DefineProperties ,这允许您定义自己的属性,然后您可以随心所欲地流式传输任何内容。
这涉及用于流式传输的特殊代码,但如果您的数组不是太具体,您可以将该代码放在类属性中,并在您的根类之一中处理所有内容。

关于xml - Delphi:将对象流式传输到 XML,包括数组属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4934920/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com