有没有可能在不知道每个记录的大小的情况下访问文本文件中的特定记录(使用特定的索引)?
发布于 2011-03-25 13:07:57
如果您维护一个单独的记录偏移量索引,那么您可以简单地查询它以查找适当的位置。否则,不会。
发布于 2011-03-25 13:21:56
如果记录恰好在一个方便的键上排序,并且您可以确定一条记录的结束位置和另一条记录的开始位置,那么您可以实现二进制或插值搜索方法。您也许能够将其添加到您的文本文件格式中,以帮助查找。否则,你只能从已知索引的位置进行连续搜索(很明显,文件的开头是1,如果你知道可以从文件末尾向后搜索的记录总数)。您还可以考虑执行一次遍历来创建索引以允许直接访问,或者让文件嵌入一个可以轻松读取的偏移量列表。
发布于 2011-03-26 06:33:20
查看dbopen()函数。如果将DB_RECNO作为类型参数传递,则可以访问可变长度的记录。这些记录可以用换行符分隔。从本质上讲,您的“数据库”是一个平面文本文件。
API还可以方便地为您处理插入和删除操作。
https://stackoverflow.com/questions/5428725
复制相似问题