CArchive
如果我们不知道文件中存储了什么类型的对象,有什么方法可以从文件中检索信息CArchive
?
我想知道信息以什么格式存储在CArchive
文件中。
请帮我解决这个问题。
CArchive
如果我们不知道文件中存储了什么类型的对象,有什么方法可以从文件中检索信息CArchive
?
我想知道信息以什么格式存储在CArchive
文件中。
请帮我解决这个问题。
文件格式记录在TN002: Persistent Object Data Format下。虽然这解释了如何在数据流中识别对象以进行反序列化,但将数据转储到CArchive
和读回的实际逻辑取决于使用和宏CObject
的类的派生类实现。DECLARE_SERIAL
IMPLEMENT_SERIAL
如果没有实际的(反)序列化代码,您对二进制流几乎无能为力CArchive
,除非生成它的实现自始至终使用标准的序列化方法,允许您猜测存储的数据类型。
但是,与 JSON 或 XML 不同的是, aCArchive
的序列化数据不是自描述的。即使您知道任何给定数据的类型,文件中也没有任何内容包含任何语义信息。