win32 api 文件操作!

 

CreateFile
打开文件
要对文件进行读写等操作,首先必须获得文件句柄,通过该函数可以获得文件句柄,该函数是通向文件世界的大门。

ReadFile
从文件中读取字节信息。
在打开文件获得了文件句柄之后,则可以通过该函数读取数据。

WriteFile
向文件写入字节信息。
同样可以将文件句柄传给该函数,从而实现对文件数据的写入。

CloseHandle
关闭文件句柄。
打开门之后,自然要记得关上。

GetFileTime
获取文件时间。
有三个文件时间可供获取:创建时间、最后访问时间、最后写时间。
该函数同样需要文件句柄作为入口参数。

GetFileSize
获取文件大小。
由于文件大小可以高达上数G(1G需要30位),因此一个32位的双字节类型无法对其精确表达,因此返回码表示低32位,还有一个出口参数可以传出高32位。
该函数同样需要文件句柄作为入口参数。

GetFileAttributes
获取文件属性。
可以获取文件的存档、只读、系统、隐藏等属性。
该函数只需一个文件路径作为参数。

SetFileAttributes
设置文件属性。
能获取,自然也应该能设置。
可以设置文件的存档、只读、系统、隐藏等属性。
该函数只需一个文件路径作为参数。

GetFileInformationByHandle
获取所有文件信息
该函数能够获取上面所有函数所能够获取的信息,如大小、属性等,同时还包括一些其他地方无法获取的信息,比如:文件卷标、索引和链接信息。
该函数需要文件句柄作为入口参数。

GetFullPathName
获取文件路径,该函数获取文件的完整路径名。
需要提醒的是:只有当该文件在当前目录下,结果才正确。如果要得到真正的路径。应该用GetModuleFileName函数。

CopyFile
复制文件
注意:只能复制文件,而不能复制目录

MoveFileEx
移动文件
既可以移动文件,也可以移动目录,但不能跨越盘符。(Window2000下设置移动标志可以实现跨越盘符操作)

DeleteFile
删除文件

GetTempPath
获取Windows临时目录路径

GetTempFileName
在Windows临时目录路径下创建一个唯一的临时文件

SetFilePoint
移动文件指针。
该函数用于对文件进行高级读写操作时。


win32 <wbr>api <wbr>文件操作! 文件的锁定和解锁

LockFile
UnlockFile
LockFileEx
UnlockFileEx

以上四个函数用于对文件进行锁定和解锁。这样可以实现文件的异步操作。可同时对文件的不同部分进行各自的操作。

win32 <wbr>api <wbr>文件操作! 文件的压缩和解压缩

LZOpenFile
打开压缩文件以读取

LZSeek
查找压缩文件中的一个位置

LZRead
读一个压缩文件

LZClose
关闭一个压缩文件

LZCopy
复制压缩文件并在处理过程中展开

GetExpandedName
从压缩文件中返回文件名称。

以上六个函数为32位 API 中的一个小扩展库,文件压缩扩展库中的函数。文件压缩可以用命令 compress 创建。


win32 <wbr>api <wbr>文件操作! 文件内核对象

    32位 API 提供一个称为文件映像的特性,它允许将文件直接映射为一个应用的虚拟内存空间,这一技术可用于简化和加速文件访问。

CreateFileMapping
创建和命名映射

MapViewOfFile
把文件映射装载如内存

UnmapViewOfFile
释放视图并把变化写回文件

FlushViewOfFile
将视图的变化刷新写入磁盘

希望通过以上几个常用的 API 函数,能快速的提高文件操作过程函数的编写。

转载于:https://www.cnblogs.com/lvdongjie/p/4788610.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/258365.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

小说里的lt什么意思_游戏cpdd网络用语是什么意思 王者荣耀里很常见

[闽南网]随着互联网的发展&#xff0c;越来越多的流行语横空出世&#xff0c;在网络上得到广泛使用。当一个网络语流行的时候&#xff0c;不管在微博上还是贴吧里&#xff0c;都会看见和流行语有关的句子和表情包。眼下在各种游戏里&#xff0c;总是能看到游戏玩家们说“cpdd”…

linux系统 硬链接和软链接

背景&#xff1a; 当几个用户同在一个项目里工作时。经常须要共享文件。假设一个共享文件同一时候出如今属于不同用户的不同文件夹下。工作起来就非常方便。比如B和C文件夹下有一文件D是两者都能够訪问和改动的共享文件&#xff0c;这样是非常方便&#xff0c;但也会有一些问题…

openssl 学习之从证书中提取RSA公钥N 和 E

原文链接: http://blog.csdn.net/kkxgx/article/details/19850509 通常数字证书包含很多信息&#xff0c;其中N和E值即我们称为的公钥。如何从PEM 或者DER格式的证书中提出证书呢&#xff1f;下面给出代码实现从PEM和DER编码的证书中提出N、E。 [cpp] view plaincopy #include …

Web browser的发展演变

我们每天都在使用着浏览器&#xff0c;每个人使用的浏览器各不一样。在这个科技飞速发展的时代&#xff0c;一个游览器能否站住脚跟取决于使用者的数量&#xff0c;看用户是否喜欢这个产品&#xff0c;听取用户们的意见来改善。 我们这个年龄的人最初用到的浏览器肯定是IE浏览器…

matlab 散点图 线性回归图_线性回归思路梳理

作者&#xff1a;夏雨骄阳 封面&#xff1a;自己想吧1简单线性回归1根据研究目的确定因变量和自变量。2判断有无异常值。通过绘制散点图直观观察&#xff1b;亦可通过线性回归的【统计】→【个案诊断】→【所有个案】进行分析&#xff0c;若标准残差超过[-3,3]&#xff0c;则…

物联网云端设计分析

物联网是世界信息产业发展的新浪潮&#xff0c;智能手表、智能手环、智能灯等物联网产品不断的改变着人们的生活方式。那这些产品是怎么设计出来的呢&#xff1f;其实物联网操作系统不光由本地物联网设备上的操作系统组成&#xff0c;还包括提供物联网终端设备支持的云端架构。…

Redis和Memcached的区别

2019独角兽企业重金招聘Python工程师标准>>> Redis的作者Salvatore Sanfilippo曾经对这两种基于内存的数据存储系统进行过比较&#xff1a; Redis支持服务器端的数据操作&#xff1a;Redis相比Memcached来说&#xff0c;拥有更多的数据结构和并支持更丰富的数据操作…

hbase hmaster一会就没了_浅析HBase

一、HBase简介1、Apache HBase™是Hadoop数据库&#xff0c;是一个分布式&#xff0c;可扩展的大数据存储。2、当您需要对大数据进行随机&#xff0c;实时读/写访问时&#xff0c;请使用Apache HBase™。 该项目的目标是托管非常大的表&#xff08; 数十亿的行*百万的列 &#…

MATLAB 迭代法解方程

MATLAB 迭代法解方程 1、代码如下&#xff1a; %%牛顿迭代法解方程 function xnewton_interation(fun,dfun,x0,EPS) %简单牛顿迭代法%fun即迭代函数&#xff0c;dfun即迭代函数的一阶导数&#xff0c;x0为迭代初值&#xff0c;EPS为精度x1x0-fun(x0)/dfun(x0); %牛顿迭代公…

超微服务器电源短接启动图解_教你一招,让你的电脑启动速度秒杀别人

win10快速启动其实是电脑的一种休眠模式&#xff0c;它将电脑中的一些本该关闭的文件保存到hiberfil.sys的磁盘文件中&#xff0c;这样打开电脑时就达到了快速开机的目的。接下来&#xff0c;我就将win10设置快速启动的方法分享给你们win10系统功能非常强大&#xff0c;最让大家…

MATLAB 求离散信号卷积

MATLAB 求离散信号卷积 代码如下&#xff1a; function [C,Ck] dt_convolution_advance(A,B,Ak,Bk) % dt_convolution_advance 计算离散信号卷积 % A 输入信号 % B 输入信号 % Ak 输入信号A下标 % Bk 输入信号B下标 % C 输出信号 % Ck 输出信号C下标 % 计算输入信号A&…

发布 项目_第十八期科创基金项目发布会圆满结束

第十八期科创基金项目发布会圆满结束贺电&#xff01;贺电!电子信息工程学院发来贺电&#xff1a;第十八届科创基金项目发布会圆满结束啦&#xff01;感谢导师们的支持、现场同学的热情参与和科协朋友后勤服务&#xff01;NUAA即使是寒冷的冬天也无法阻挡同学们对科创的热情,那…

Fisher线性判别算法原理及实现 MATLAB

Fisher线性判别算法原理及实现 MATLAB 一、Fisher判别器原理 二、代码实现 clc; close all; clear; %% 生成数据 rng(2020); %指定一个种子 mu1 [0 3]; sigma1 [0.5 0; 0 0.5]; data1 mvnrnd(mu1,sigma1,300); %生成一个300*2的矩阵&#xff0c;每一列的数据分别以0&…

大话设计模式之外观模式

年年作品展&#xff0c;岁岁不相同&#xff0c;鹅黄新绿涟漪泛起思想的火花却不尽相同。十期的作品展&#xff0c;从13年3月20号開始到完美落幕&#xff0c;时至今日&#xff0c;她已经在我的记忆中成为过去。这朵小小的浪花激起的涟漪渐渐褪去&#xff0c;或许已没有或许&…

HK算法原理及MATLAB实现

HK算法原理及MATLAB实现 一、编程原理 说明&#xff1a; 1、绿色框图中&#xff0c;当alpha取为最优权向量时&#xff0c;会使 取为最小值。arg的意思是当后面那个函数满足时&#xff0c;取出它的自变量的值。 2、注意后面那个式子是对b求偏导 3、e(t)大于0时&#xff0c;下…

python列反过来_xlwings 教程:使用Python更快速地处理Excel

Excel在当今商业中的使用非常普遍。在Dataquest&#xff0c;出于很多原因&#xff0c;我们通常推荐使用代码处理数据&#xff0c;并且我们的许多数据科学课程的目标是教授数据分析和数据科学的高效编码。但是&#xff0c;无论您多么喜欢使用Python&#xff0c;在一天结束时&…

多类线性分类器算法原理及代码实现 MATLAB

多类线性分类器算法原理及代码实现 MATLAB 一、算法原理 下面举例说明为何蓝圈部分在case2中是确定的而在case1中不确定&#xff1a; 二、代码实现 1、HK函数 function [] HK(w1_data,w2_data) %w1_data为第一类数据集 w2_data为第二类数据集 %此函数的作用为用HK算法对输…

(转) C#如何使用异步编程

怎么使用异步&#xff0c;就是用委托进行处理&#xff0c;如果委托对象在调用列表中只有一个方法&#xff0c;它就可以异步执行这个方法。委托类有两个方法&#xff0c;叫做BeginInvoke和EndInvoke&#xff0c;它们是用来异步执行使用。 异步有三种模式 等待模式&#xff0c;在…

javascript 的 ~ 操作符作用

2019独角兽企业重金招聘Python工程师标准>>> "~" operator in javascript. For anyone else who also didnt know what it does: it converts -1 to 0&#xff0c;可以节省用来比较-1的情况&#xff0c;如 if (~event.origin.indexOf(http://yoursite.com…

驻定相位原理(POSP)以及线性调频信号的频谱

最近看论文遇到了驻定相位原理&#xff0c;问老师直接给了我一本书让我看&#xff0c;看半天只有一段…不是这个方向的&#xff0c;半路出家做毕业设计需要用到这个定理&#xff0c;有错误的话请不吝赐教。 一、驻定相位原理 在数字信号处理中&#xff0c;经常需要将一个时域…