c++ - 用于在移动设备上存储来自数千个文件的数据的结构

标签 c++ sqlite

我有超过 32000 个存储某种空间数据的二进制文件。我通过文件名访问数据。这些文件的大小范围为 0-400kb。我需要能够在不同的时间点随机访问这些文件的内容。我不喜欢在移动设备上安装 32000 多个单独的数据文件(即使总文件大小小于 100mb)。我想将这些文件合并到一个结构中,这样我仍然可以快速访问我需要的数据。我想要有关执行此操作的最佳方法的建议。任何建议都应该有用于访问数据的 C/C++ 库,并且应该有允许毫无问题地包含在商业闭源应用程序中的自由许可。

到目前为止,我唯一想到的就是将所有内容都存储在 sqlite 数据库中,尽管我不确定这是否是最佳方法,或者我不确定在快速查看存储 blob 数据时需要考虑哪些注意事项正常运行时间(即,我会使用什么模式)。

最佳答案

为什么不自己推出呢?

您的要求听起来非常简单明了。只需将所有内容捆绑到一个二进制文件中,并在开头添加一个索引,告诉您哪个文件从哪里开始以及它的位数。

最多 30 行 C++ 代码。花 10 分钟为它设计一个好的界面,这样您就可以在需要时更换实现。

当然,如果数据是只读的。如果您需要随时更改它,它会很快变得毛茸茸。

关于c++ - 用于在移动设备上存储来自数千个文件的数据的结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10692068/

相关文章:

php - SQLITE 按日期排序忽略年份

android - 什么时候关闭android上的数据库连接?每次操作完成或应用退出后

java - 单元工作克隆 sqlite 中的主键为空或零

c++ - 将 %E6%B0%94%E6%97%8B%E5%93%88%E5%88%A9.txt 解码为有效字符串

c++ - 在 BusyBox 中使用 Posix_Spawn 启动 UDHCPC 守护进程。

python - SQLAlchemy 错误?我不知道

python - 从查询集创建 Django 表单

c++ - 在没有继承的情况下回收成员功能

c++ - 让 gprof 根据挂钟时间进行分析?

c++ - C++中纯虚方法的重新定义