windows文件管理
来源:互联网 发布:股票数据模型软件 编辑:程序博客网 时间:2024/05/08 00:42
前言
一切皆文件。操作文件的函数总是比你想象的更强大,windows操作文件的函数返回是HANDLE句柄,它可以标识一块内存,所以它的功能也是远比文件更强大。
文件读写
打开/创建文件
HANDLE CreateFile(
LPCTSTR lpFileName, // pointer to name of the file文件名称路径
DWORD dwDesiredAccess, // access (read-write) mode打开方式
DWORD dwShareMode, // share mode共享方式(其他进程共同操作时权限)
LPSECURITY_ATTRIBUTES lpSecurityAttributes,
// pointer to security attributes安全属性,设为NULL
DWORD dwCreationDisposition, // how to create打开/创建方式
DWORD dwFlagsAndAttributes, // file attributes打开追加属性
HANDLE hTemplateFile // handle to file with attributes to
// copy 设为NULL
);写文件
BOOL WriteFile(
HANDLE hFile, // 文件句柄
LPCVOID lpBuffer, // 缓冲数据的地址
DWORD nNumberOfBytesToWrite, // 准备写入的数据大小
LPDWORD lpNumberOfBytesWritten, // 实际写入的数据大小(返回值)
LPOVERLAPPED lpOverlapped // 同步/异步方式 NULL为同步
);
最后的同步/异步方式将影响这个函数是否会产生阻塞,如果同步方式下,写入的数据未能投递到系统写队列里,将产生阻塞读文件
BOOL ReadFile(
HANDLE hFile, // 文件句柄
LPVOID lpBuffer, // 读出数据存放的缓冲地址
DWORD nNumberOfBytesToRead, // 准备读出的数据大小
LPDWORD lpNumberOfBytesRead, // 实际读出的数据大小
LPOVERLAPPED lpOverlapped // 同步/异步方式 NULL为同步
);- 读取文件大小和设定文件读取位置
DWORD GetFileSize(
HANDLE hFile, // 文件句柄
LPDWORD lpFileSizeHigh
// 文件大小的高32位存放地址
);返回值是文件大小低32
设置文件读取/写入偏移位置
DWORD SetFilePointer(
HANDLE hFile, // 文件地址
LONG lDistanceToMove, // 偏移大小低32位
PLONG lpDistanceToMoveHigh,
// 偏移大小高32位
DWORD dwMoveMethod // 偏移相对位置
);
- 其它操作函数
CopyFile() DeleteFile() MoveFile(),
其中MoveFile在操作目录时是不能跨盘的
文件遍历
文件遍历利用FindFirstFile. FindNextFile. FindClose3个函数配合使用,首先用FindFirstFile打开一个目录,该函数返回一个文件句柄,循环调用FindNextFile,它的返回值如果是FALSE说明遍历完毕,而文件的信息都会记录在FindFirstFile和FindNextFile的第二个结构体参数里,
最后FindClose关闭这个文件句柄。
- Windows文件管理
- windows文件管理
- 在Windows Azure平台上管理文件
- Windows内存管理 - 内存映射文件
- Windows编程之文件/目录管理
- HTML打开Windows文件管理系统
- c++windows内核编程笔记day12 硬盘逻辑分区管理、文件管理、内存管理
- Windows下去SVN版本管理的注册表文件
- 颠覆性Windows平台资源管理器,急速管理文件----闪电人生
- Windows上管理远程Linux VPS/服务器文件工具 - winscp
- linux文件区分大小写,不方便在windows下面开发管理
- 怎样快速进入Windows 10的文件管理系统
- windows资源文件管理应用图标与管理员权限
- Linux和windows互传文件、用户配置文件和密码配置文件、用户组管理与用户管理
- 文件管理
- 文件管理....
- 文件管理
- 文件管理
- JAVA缓存技术-JNI静态文件的处理
- 基本的预处理指令
- 2016-3-3
- 下载管理器
- C# 文件操作类集合(二) 文件处理
- windows文件管理
- 开发工具整合
- C# 文件操作类集合(三) INI相关
- ios即时通讯客户端开发之-mac上搭建openfire服务器
- UILable“中文”加上“英文或者其他非中文字符”自动换行的问题
- Excel 导入 mysql
- WCL入门
- android线程小结
- (java) Linked List Cycle