加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Windows > 正文

在Windows上创建大文件

发布时间:2020-12-13 20:49:07 所属栏目:Windows 来源:网络整理
导读:我需要创建一个较大的(1-8 GB)大文件。在Windows上使用C或C最快的方??法是什么?我需要快速创建它们,速度真的是一个问题。文件将用于存储仿真,即将以不同的偏移量随机访问,我需要所有存储将被预分配但未初始化,目前我们正在使用伪数据写入所有存储,并且
我需要创建一个较大的(1-8 GB)大文件。在Windows上使用C或C最快的方??法是什么?我需要快速创建它们,速度真的是一个问题。文件将用于存储仿真,即将以不同的偏移量随机访问,我需要所有存储将被预分配但未初始化,目前我们正在使用伪数据写入所有存储,并且耗时太长。

谢谢。

使用Win32 API, CreateFile, SetFilePointerEx, SetEndOfFile和 CloseHandle.按同样的顺序。

这个技巧在SetFilePointerEx函数中。从MSDN:

Note that it is not an error to set
the file pointer to a position beyond
the end of the file. The size of the
file does not increase until you call
the SetEndOfFile,WriteFile,or
WriteFileEx function.

Windows资源管理器在将文件从一个位置复制到另一个位置时,实际上也是这样做的。它执行此操作,以便磁盘不需要为碎片磁盘重新分配文件。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读