windows核心编程第17章 一个文件一个缓存

本文介绍了一个使用C++实现的通过ReadFile函数读取大文件的例子。该示例程序展示了如何创建文件句柄、分配内存缓冲区并测量读取所需的时间。适用于希望了解Windows环境下文件操作具体实现细节的读者。

// ReadFileByOneBuffer.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include<Windows.h>

int main()
{
DWORD ReturnLength;
HANDLE hFile = CreateFile("E:/862.exe", GENERIC_READ | GENERIC_WRITE,
0, NULL, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, NULL);
if (hFile == INVALID_HANDLE_VALUE)
{
printf("创建文件对象失败%d ", GetLastError());
return 0;
}
char*v1 = (char*)VirtualAlloc(NULL, 1281922, MEM_COMMIT, PAGE_READWRITE);

DWORD start, end;
start = GetTickCount();

BOOL IsOK=ReadFile(hFile, v1, 1281922, &ReturnLength, NULL);
if (IsOK == TRUE)
printf("%d", ReturnLength);

end = GetTickCount();
printf("time=%d\n", end - start);

CloseHandle(hFile);
getchar();
return 0;
}

 

转载于:https://www.cnblogs.com/L-Sunny/p/8389270.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值