Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

有没有什么效率高的序列化库推荐(c++)

27 views
Skip to first unread message

tyh_123

unread,
Apr 1, 2022, 3:10:13 AM4/1/22
to
最近在搞一个码流分析工具,需要将运动矢量信息和宏块一些信息转存到文件,数据量比较大。

所以需要找个序列化库,想找个:
调用简单、存储效率高(io读写尚可就好,不想用json/xml,太费磁盘空间,如果支持非加载到内存的随机访问就好了)。

问我为啥不自己写一个简易的(因为懒~)

I'mNewBlue

unread,
Apr 2, 2022, 10:50:57 AM4/2/22
to

如果不需要对外公开,属于私有的数据,我觉得你还是直接二进制按块写入算了,
序列化的意义在于数据的共享和协作。

>>>>> tyh_123 <alpho...@gmail.com> <<<<<
--
;-)

tyh_123

unread,
Apr 5, 2022, 10:50:33 PM4/5/22
to


我想过用stream的方式序列化,也想过直接把整个struct内存写文件,然后写个表头表征struct有多少个,方便快速随机访问。
但关键就在于现在struct的成员还不稳定,还存在增加或者删减的情况,如果用version来区分struct,倒还不如直接用开源的一劳永逸。

I'mNewBlue

unread,
Apr 13, 2022, 12:00:44 PM4/13/22
to

>>>>> tyh_123 <alpho...@gmail.com> <<<<<
> 我想过用stream的方式序列化,也想过直接把整个struct内存写文件,然后写个
> 表头表征struct有多少个,方便快速随机访问。但关键就在于现在struct的成员
> 还不稳定,还存在增加或者删减的情况,如果用version来区分struct,倒还不
> 如直接用开源的一劳永逸。

能不能用類似bencode那種,在寫入struct之前,寫入對應的version,根據
version去確定讀取的大小?其實選個開源成熟的開源方案也是可以的,一般效率
都不會差得很離譜,就是方便與否,需要考量。

--
;-)

tyh_123

unread,
Apr 14, 2022, 10:37:45 PM4/14/22
to


这就是我不想造轮子,直接用开源库的原因。我觉得完全可以,但没必要自己写。一开始我就是这么考虑的,但是有开源最好,自己造轮子价值不是很大。

0 new messages