【发布时间】:2010-11-27 00:15:58
【问题描述】:
您知道一些用于将数据存储在一个二进制文件中的库/框架/embeddedEngine吗?一个文件中的文件系统之类的东西。它还必须支持在删除/更新后对数据进行分段的工具。首选语言 C++ 或 C#。平台窗口。
谢谢你的建议!!!
【问题讨论】:
-
您是指碎片整理数据吗?压缩文件(如 ZIP)对您不起作用有什么原因吗?甚至微软最近也放弃了“文件中的迷你文件系统”的概念,推出了更高版本的 Office。
-
@Cody:从这个意义上说,“碎片整理”没有意义。我认为他的意思是他需要能够在文件中间插入数据,而无需随后将整个文件写入磁盘。
-
@Billy:是的,你说得对。我想插入数据、删除数据并避免碎片整理;)
-
@Cody ZIP 效率极低,因为对其进行任何更新都需要重写整个存档。另外,你对微软改变格式背后的动机是错误的。有一种开放文档格式越来越受欢迎,微软不得不提供它自己的专有替代品以保持市场。他们需要这种基于 XML 的格式(类似于 ODF)才能与 ODF 竞争。
-
碎片会以一种或另一种方式出现,因为写入不连续。然而虚拟文件系统将在很大程度上处理这个问题。碎片化本身并不是一个大问题。这是对空白空间(间隙)的低效使用,虚拟文件系统可以很好地处理这个问题。
标签: c# c++ filesystems storage binaryfiles