Windows API一日一练 53 CreateFile函数

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow

也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!

               
在软件的需求里,把有用的数据保存起来是非常重要的功能。比如每天的股票行情数据需要保存起来,以便生成 K 线图。比如游戏客户端的 LOG 需要保存起,以便客户端出错时可以把 LOG 发送回来分析它出错的原因。比如银行每天进行交易时,也需要把所有交易的数据保存到文件备份起来,以便进行结算。还有在数据采集领域更是需要保存更多的数据,比如从 DV 里读取视频和语音数据出来,就会生成 12G 的巨型文件。比如读 DVD 光盘里,把光盘做成虚拟光驱也有 9G 大小。因此,创建文件是非常普通的功能,这个肯定是掌握,并且非常会使用的。当然这个 CreateFile 函数不但可以创建文件,还可以打串口、并口、网络、 USB 设备等功能。
 
 
函数 CreateFile 声明如下:
 
WINBASEAPI
__out
HANDLE
WINAPI
CreateFileA(
    __in     LPCSTR lpFileName,
    __in     DWORD dwDesiredAccess,
    __in     DWORD dwShareMode,
    __in_opt LPSECURITY_ATTRIBUTES lpSecurityAttributes,
    __in     DWORD dwCreationDisposition,
    __in     DWORD dwFlagsAndAttributes,
    __in_opt HANDLE hTemplateFile
    );
WINBASEAPI
__out
HANDLE
WINAPI
CreateFileW(
    __in     LPCWSTR lpFileName,
    __in     DWORD dwDesiredAccess,
    __in     DWORD dwShareMode,
    __in_opt LPSECURITY_ATTRIBUTES lpSecurityAttributes,
    __in     DWORD dwCreationDisposition,
    __in     DWORD dwFlagsAndAttributes,
    __in_opt HANDLE hTemplateFile
    );
#ifdef UNICODE
#define CreateFile CreateFileW
#else
#define CreateFile CreateFileA
#endif // !UNICODE
lpFileName 是文件或设备的名称。
dwDesiredAccess 是访问属性。
dwShareMode 是共享属性。
lpSecurityAttributes 是安全属性。
dwCreationDisposition 是创建属性。
dwFlagsAndAttributes 是文件标志和属性。
hTemplateFile 是文件模板。
 
调用函数的例子如下:
#001  // 创建文件。
#002  // 蔡军生  2007/10/18 QQ:9073204 深圳
#003  void CreateFileDemo(void)
#004  {
#005         //
#006         HANDLE hFile = ::CreateFile(_T("CreateFileDemo.txt"),     // 创建文件的名称。
#007              GENERIC_WRITE,          // 写文件。
#008              0,                      // 不共享读写。
#009              NULL,                   // 缺省安全属性。
#010              CREATE_ALWAYS,          // 如果文件存在,也创建。
#011              FILE_ATTRIBUTE_NORMAL, // 一般的文件。          
#012              NULL);                 // 模板文件为空。
#013 
#014         if (hFile == INVALID_HANDLE_VALUE)
#015         {
#016               //
#017               OutputDebugString(_T("CreateFile fail!/r/n"));
#018         }
#019  }
            

给我老师的人工智能教程打call!http://blog.csdn.net/jiangjunshow
这里写图片描述
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值