当前位置:七道奇文章资讯数据防范MySQL防范
日期:2011-01-25 22:43:00  来源:本站整理

快速掌握 Mysql数据库对文件操作的封装[MySQL防范]

赞助商链接



  本文“快速掌握 Mysql数据库对文件操作的封装[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
 

快速掌握 Mysql数据库对文件操作的封装

 

在查看Mysql对文件的操作中,它在差别的操作系统上对文件的操作,除了利用尺度C运行库函数,包含open、close、seek等,在Win32下的文件和目录操作函数利用了CreatFile、CloseHandl、SetFilePointer等,很多人大概不懂得为什么对文件的操作要封装出两套函数.

其实利用API和尺度库函数都可以生成文本文件和二进制文件,在这点上没有辨别.同read()对应的是ReadFile,同write()对应的是WriteFile,同seek()对应的是SetFilePointer,同close对应的是CloseHandle.这两套函数都可以利用.但是Win 32系统把文件的概念举行了扩大.无论是文件、通信设备、命名管道、邮件槽、磁盘、还是掌握台,都是用API函数CreateFile来翻开或成立的.该函数的声明为:

 

HANDLE CreateFile( 
LPCTSTR lpFileName, // 文件名 
DWORD dwDesiredAccess, // 拜候情势 
DWORD dwShareMode, // 同享情势 
LPSECURITY_ATTRIBUTES lpSecurityAttributes, // 普通为NULL 
DWORD dwCreationDistribution, // 成立方法 
DWORD dwFlagsAndAttributes, // 文件属性和标志 
HANDLE hTemplateFile // 暂时文件的句柄,普通为NULL

 

 

假如调用成功,那么该函数返回文件的句柄,假如调用失利,则函数返回:

 

INVALID_HANDLE_VALUE.

 

 

在用ReadFile和WriteFile读写时,既可以同步履行,也可以异步履行.ReadFile和WriteFile函数能否为履行异步操作是由CreateFile函数决意的.假如在调用CreateFile成立句柄时指定了FILE_FLAG_OVERLAPPED标志,那么调用ReadFile和WriteFile对该句柄举行的读写操作就是异步的,假如未指定异步标志,则读写操作是同步的.在同步履行时,函数直到操作完成后才返回.这意味着在同步履行时线程会被阻塞,从而招致效率下降.在异步履行时,即便操作还未完成,调用的函数也会当即返回.费时的I/O操作在后台举行,这样线程便可以干别的事情.这样可以大大的提高效率.这一点是值得我们学习和鉴戒的,关于我们在文件的操作方面也可以对win32系统举行封装来提高文件操作的效率.

  以上是“快速掌握 Mysql数据库对文件操作的封装[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • <b>快速掌握MySQL数据库中SELECT语句的办法</b>
  • 快速掌握 Mysql数据库对文件操作的封装
  • <b>快速掌握Photoshop CS4的全新3D技术</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .