我想知道fseek是如何在Windows文件系统上工作的。 据我所知,文件有点像链接 集群列表(它们可能是常量) 但我不知道fseek是否会前往目的地 需要阅读并跳过这个集群的长链 或者它可能是一些群集,所以只有fseek 通过它查找,然后进入正确的集群 无需阅读以前的内容。可以一些 那个人回答了什么?
答案 0 :(得分:1)
如果您对fseek()
在Windows上的工作原理感到好奇,请参阅Visual Studio附带的CRT源代码。
您会看到它是使用SetFilePointer() API实现的,它只是恰当地调整FILE_OBJECT :: CurrentByteOffset。
文件系统实现者将此偏移量用于同步(非重叠)读取和写入操作。至于文件系统如何跟踪文件数据(集群/扩展区),在实现之间有所不同。你想解决什么问题?