亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mfc教程_ mfc下的文件類.htm

?? MFC的教程。 包括: MFC教程_ 概述.files MFC教程_ MFC和Win32.files MFC教程_ CObject類.files MFC教程_ 消息映射的實現(xiàn).files
?? HTM
?? 第 1 頁 / 共 2 頁
字號:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0042)http://www.vczx.com/tutorial/mfc/mfc11.php -->
<HTML><HEAD><TITLE>MFC教程_ MFC下的文件類</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2900.2668" name=GENERATOR></HEAD>
<BODY bgColor=#ffffff>
<OL start=11>
  <P align=justify>
  <LI><A name=_Toc452640991></A><A name=_Toc457299100></A><B>MFC下的文件類</B> 
  <P></P>
  <OL>
    <P align=justify>
    <LI><B><A name=_Toc452640992></A><A name=_Toc457299101></A>文件操作的方法</B> 
    <P></P>
    <P align=justify>使用Visual C++編程,有如下方法進行文件操作:</P>
    <P align=justify>(1)使用標準C運行庫函數(shù),包括fopen、fclose、fseek等。</P>
    <P 
    align=justify>(2)使用Win16下的文件和目錄操作函數(shù),如lopen、lclose、lseek等。不過,在Win32下,這些函數(shù)主要是為了和Win16向后兼容。</P>
    <P 
    align=justify>(3)使用Win32下的文件和目錄操作函數(shù),如CreateFile,CopyFile,DeleteFile,F(xiàn)indNextFile,等等。</P>
    <P 
    align=justify>Win32下,打開和創(chuàng)建文件都由CreateFile完成,成功的話,得到一個Win32下的句柄,這不同于“C”的fopen返回的句柄。在Win16下,該句柄和C運行庫文件操作函數(shù)相容。但在Win32下,“C”的文件操作函數(shù)不能使用該句柄,如果需要的話,可以使用函數(shù)_open_osfhandle從Win32句柄得到一個“C”文件函數(shù)可以使用的文件句柄。</P>
    <P align=justify>關閉文件使用Win32的CloseHandle。</P>
    <P 
    align=justify>在Win32下,CreateFile可以操作的對象除了磁盤文件外,還包括設備文件如通訊端口、管道、控制臺輸入、郵件槽等等。</P>
    <P 
    align=justify>(4)使用CFile和其派生類進行文件操作。CFile從CObject派生,其派生類包括操作文本文件的CStdioFile,操作內存文件的CmemFile,等等。</P>
    <P align=justify>CFile是建立在Win32的文件操作體系的基礎上,它封裝了部分Win32文件操作函數(shù)。</P>
    <P align=justify></P>
    <P 
    align=justify>最好是使用CFile類(或派生類)的對象來操作文件,必要的話,可以從這些類派生自己的文件操作類。統(tǒng)一使用CFile的界面可以得到好的移植性。</P>
    <P align=justify></P>
    <LI><A name=_Toc452640993></A><A name=_Toc457299102></A><B>MFC的文件類</B> 
    <P></P>
    <P align=justify>MFC用一些類來封裝文件訪問的Win32 
    API。以CFile為基礎,從CFile派生出幾個類,如CStdioFile,CMemFile,MFC內部使用的CMiororFile,等等。</P>
    <OL>
      <P align=justify>
      <LI><A name=_Toc452640994></A><A name=_Toc457299103></A><B>CFile的結構</B> 
      <P></P>
      <OL>
        <P align=justify>
        <LI><B><A name=_Toc457299104></A>CFile定義的枚舉類型</B> 
        <P></P></LI></OL></LI></OL></LI></OL></LI></OL>
<P 
align=justify>CFile類定義了一些和文件操作相關的枚舉類型,主要有四種:OpenFlags,Attribute,SeekPosition,hFileNull。下面,分別解釋這些枚舉類型。</P>
<OL>
  <P align=justify>
  <LI>OpenFlags 
  <P></P>
  <P align=justify>OpenFlags定義了13種文件訪問和共享模式:</P>
  <P align=justify>enum OpenFlags {</P>
  <P align=justify>//第一(從右,下同)至第二位,打開文件時訪問模式,讀/寫/讀寫</P>
  <P align=justify>modeRead = 0x0000,</P>
  <P align=justify>modeWrite = 0x0001,</P>
  <P align=justify>modeReadWrite = 0x0002,</P>
  <P align=justify>shareCompat = 0x0000, //32位MFC中沒用</P>
  <P align=justify>//第五到第七位,打開文件時的共享模式</P>
  <P align=justify>shareExclusive = 0x0010,//獨占方式,禁止其他進程讀寫</P>
  <P align=justify>shareDenyWrite = 0x0020,//禁止其他進程寫</P>
  <P align=justify>shareDenyRead = 0x0030,//禁止其他進程讀</P>
  <P align=justify>shareDenyNone = 0x0040,//允許其他進程寫</P>
  <P align=justify>//第八位,打開文件時的文件繼承方式</P>
  <P align=justify>modeNoInherit = 0x0080,//不允許子進程繼承</P>
  <P align=justify>//第十三、十四位,是否創(chuàng)建新文件和創(chuàng)建方式</P>
  <P align=justify>modeCreate = 0x1000,//創(chuàng)建新文件,文件長度0</P>
  <P align=justify>modeNoTruncate = 0x2000,//創(chuàng)建新文件時如文件已存在則打開</P>
  <P align=justify>//第十五、十六位,文件以二進制或者文本方式打開,在派生類CStdioFile中用</P>
  <P align=justify>typeText = 0x4000,</P>
  <P align=justify>typeBinary = (int)0x8000</P>
  <P align=justify>};</P>
  <P align=justify></P>
  <LI>Attribute 
  <P></P>
  <P align=justify>Attribute定義了文件屬性:正常、只讀、隱含、系統(tǒng)文件,文件或者目錄等。</P>
  <P align=justify>enum Attribute {</P>
  <P align=justify>normal = 0x00,</P>
  <P align=justify>readOnly = 0x01,</P>
  <P align=justify>hidden = 0x02,</P>
  <P align=justify>system = 0x04,</P>
  <P align=justify>volume = 0x08,</P>
  <P align=justify>directory = 0x10,</P>
  <P align=justify>archive = 0x20</P>
  <P align=justify>}</P>
  <P align=justify></P>
  <LI>SeekPosition 
  <P></P>
  <P align=justify>SeekPosition定義了三種文件位置:頭、尾、當前:</P>
  <P align=justify>enum SeekPosition{</P>
  <P align=justify>begin = 0x0,</P>
  <P align=justify>current = 0x1,</P>
  <P align=justify>end = 0x2</P>
  <P align=justify>};</P>
  <P align=justify></P>
  <LI>hFileNull 
  <P></P></LI></OL>
<P align=justify>hFileNull定義了空文件句柄</P>
<P align=justify>enum { hFileNull = -1 };</P>
<OL>
  <OL>
    <OL>
      <OL>
        <P align=justify>
        <LI><A name=_Toc457299105></A><B>CFile的其他一些成員變量</B> 
        <P></P>
        <P align=justify>CFile除了定義枚舉類型,還定義了一些成員變量。例如:</P>
        <P align=justify>UINT m_hFile</P>
        <P 
        align=justify>該成員變量是public訪問屬性,保存::CreateFile返回的操作系統(tǒng)的文件句柄。MFC重載了運算符號HFILE來返回m_hFile,這樣在使用HFILE類型變量的地方可以使用CFile對象。</P>
        <P align=justify></P>
        <P align=justify>BOOL m_bCloseOnDelete;</P>
        <P align=justify>CString m_strFileName;</P>
        <P 
        align=justify>這兩個成員變量是protected訪問屬性。m_bCloseOnDelete用來指示是否在關閉文件時刪除CFile對象;m_strFileName用來保存文件名。</P>
        <P align=justify></P>
        <LI><A name=_Toc457299106></A><B>CFile的成員函數(shù)</B> 
        <P></P></LI></OL></OL></OL></OL>
<P 
align=justify>CFile的成員函數(shù)實現(xiàn)了對Win32文件操作函數(shù)的封裝,完成以下動作:打開、創(chuàng)建、關閉文件,文件指針定位,文件的鎖定與解鎖,文件狀態(tài)的讀取和修改,等等。其中,用到了m_hFile文件句柄的一般是虛擬函數(shù),和此無關的一般是靜態(tài)成員函數(shù)。一般地,成員函數(shù)被映射到對應的Win32函數(shù),如表11-1所示。</P>
<P align=center>表11-1 CFile函數(shù)對Win32文件函數(shù)的封裝</P>
<TABLE cellSpacing=1 cellPadding=7 width=497 border=1>
  <TBODY>
  <TR>
    <TD vAlign=top width="6%">
      <P align=justify>虛擬 </P></TD>
    <TD vAlign=top width="5%">
      <P align=justify>靜態(tài) </P></TD>
    <TD vAlign=top width="39%">
      <P align=justify>成員函數(shù) </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>對應的Win32函數(shù) </P></TD></TR>
  <TR>
    <TD vAlign=top colSpan=4>
      <P align=justify>文件的創(chuàng)建、打開、關閉 </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%">
      <P align=justify>√ </P></TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>Abort </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>CloseHandle </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%">
      <P align=justify>√ </P></TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>Duplicate </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>DuplicateHandle </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%">
      <P align=justify>√ </P></TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>Open </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>CreateFile </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%">
      <P align=justify>√ </P></TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>Close </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>CloseHandle </P></TD></TR>
  <TR>
    <TD vAlign=top colSpan=4>
      <P align=justify>文件的讀寫 </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%">
      <P align=justify>√ </P></TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>Read </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>ReadFile </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%"> </TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>ReadHuge(向后兼容) </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>調用Read成員函數(shù) </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%">
      <P align=justify>√ </P></TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>Write </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>WriteFile </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%"> </TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>WriteHuage(向后兼容) </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>調用Write成員函數(shù) </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%">
      <P align=justify>√ </P></TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>Flush </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>FlushFileBuffers </P></TD></TR>
  <TR>
    <TD vAlign=top colSpan=4>
      <P align=justify>文件定位 </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%">
      <P align=justify>√ </P></TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>Seek </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>SetFilePointer </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%"> </TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>SeekToBegin </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>調用Seek成員函數(shù) </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%"> </TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>SeekToEnd </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>調用Seek成員函數(shù) </P></TD></TR>
  <TR>
    <TD vAlign=top width="6%">
      <P align=justify>√ </P></TD>
    <TD vAlign=top width="5%"> </TD>
    <TD vAlign=top width="39%">
      <P align=justify>GetLength </P></TD>
    <TD vAlign=top width="50%">
      <P align=justify>調用Seek成員函數(shù) </P></TD></TR>
  <TR>

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩三区在线观看| 国产一区在线观看麻豆| 国产一区二区三区精品欧美日韩一区二区三区 | 丁香亚洲综合激情啪啪综合| 福利电影一区二区三区| 日韩欧美国产综合一区 | 91精品国产丝袜白色高跟鞋| 国产精品成人一区二区三区夜夜夜| 麻豆一区二区三区| 久久蜜桃av一区精品变态类天堂| 亚洲综合色区另类av| 色综合天天综合网国产成人综合天 | 91免费小视频| 亚洲黄色免费网站| 日韩一区和二区| 激情文学综合插| 国产精品三级av| 91国在线观看| 日本中文在线一区| 精品999久久久| 99久久久精品| 午夜精品久久久久久久久久久| 欧美三级视频在线播放| 极品少妇一区二区三区精品视频| 日本一区二区三区视频视频| 色香蕉久久蜜桃| 玖玖九九国产精品| 亚洲欧洲另类国产综合| 欧美美女喷水视频| 国产不卡在线视频| 丝袜诱惑亚洲看片| 亚洲欧洲在线观看av| 91精品国产色综合久久不卡蜜臀| 国产成人免费网站| 亚洲天堂成人在线观看| 宅男在线国产精品| 日韩一级免费观看| 久久婷婷综合激情| 国产精品久久久久久久久免费樱桃 | 亚洲图片激情小说| 亚洲国产日日夜夜| 国产综合色视频| 国产成人精品在线看| 亚洲欧美日韩电影| 国产精品久久午夜夜伦鲁鲁| 色综合 综合色| 成人爽a毛片一区二区免费| 精品一区二区三区不卡 | 蜜桃91丨九色丨蝌蚪91桃色| 国产欧美一区二区三区网站| 欧美不卡在线视频| 精品久久久久久久久久久院品网| 91精品国产乱| 2欧美一区二区三区在线观看视频 337p粉嫩大胆噜噜噜噜噜91av | 亚洲欧美日韩国产另类专区| 中文字幕精品综合| 亚洲婷婷综合久久一本伊一区| 亚洲同性gay激情无套| 亚洲制服丝袜av| 午夜av区久久| 国产一区二区三区在线观看免费视频 | 中文欧美字幕免费| 欧美日韩和欧美的一区二区| 国模少妇一区二区三区| 午夜影院久久久| 一区二区在线看| 性做久久久久久| 国产麻豆成人精品| 日本久久一区二区| 欧美一区二区播放| 亚洲国产高清在线观看视频| 综合激情成人伊人| 丝袜美腿亚洲色图| 成人福利在线看| 欧美在线免费视屏| 久久亚洲私人国产精品va媚药| 国产日韩欧美激情| 日日夜夜精品免费视频| 国产成人综合在线播放| 欧美主播一区二区三区美女| 精品国产乱码久久久久久蜜臀| 亚洲欧美怡红院| 国产精品一色哟哟哟| 欧美综合色免费| 国产精品精品国产色婷婷| 日本va欧美va精品| 91麻豆成人久久精品二区三区| 日韩久久精品一区| 欧美另类变人与禽xxxxx| 91在线你懂得| 久久青草欧美一区二区三区| 午夜精品久久久久久久久久久| www.在线欧美| 日本一区二区三区在线观看| 日韩专区一卡二卡| 天天av天天翘天天综合网| 99久免费精品视频在线观看| 国产欧美日本一区二区三区| 美腿丝袜亚洲综合| 精品免费国产二区三区| 六月婷婷色综合| 精品国产乱码久久久久久久久 | 日本不卡视频一二三区| 欧美视频精品在线| 亚洲成av人影院在线观看网| 欧美亚洲国产怡红院影院| 亚洲午夜日本在线观看| 色成年激情久久综合| 亚洲二区在线视频| 日韩一区二区影院| 国产一区免费电影| 国产精品系列在线| 欧美综合一区二区三区| 午夜精品成人在线| 久久天堂av综合合色蜜桃网 | 亚洲在线观看免费视频| 91精品婷婷国产综合久久竹菊| 美国十次了思思久久精品导航| 久久久美女毛片| 欧美在线视频日韩| 黑人巨大精品欧美黑白配亚洲| 久久久久久久久久久99999| 99re热这里只有精品免费视频| 亚洲激情图片小说视频| 精品久久人人做人人爰| 91年精品国产| 懂色av一区二区三区免费观看| 樱桃国产成人精品视频| 日韩手机在线导航| 在线观看亚洲a| 成人午夜精品一区二区三区| 日本vs亚洲vs韩国一区三区二区| 中文字幕欧美日韩一区| 日韩一区二区免费在线电影| 成人激情黄色小说| 精品一区二区三区免费毛片爱| 亚洲黄一区二区三区| 国产精品水嫩水嫩| 久久久久国产一区二区三区四区| 欧美午夜在线观看| 色综合天天性综合| 高清成人在线观看| 免费在线观看不卡| 亚洲一线二线三线久久久| 日韩有码一区二区三区| 国产一区二区三区久久久| 亚洲欧美电影院| 日韩成人午夜电影| 国产福利精品导航| 欧美日韩日日夜夜| 久久久久久久久一| 亚洲图片有声小说| 国产精品乡下勾搭老头1| 91福利视频网站| 中文子幕无线码一区tr| 午夜激情一区二区| 91视频xxxx| 精品人在线二区三区| 一区二区三区欧美视频| 国产一区不卡视频| 欧美日韩二区三区| 亚洲国产精品v| 日韩精品福利网| 99久久99久久精品免费看蜜桃| 欧美日韩亚洲高清一区二区| 2020国产精品| 日欧美一区二区| 在线免费视频一区二区| 久久精品日韩一区二区三区| 午夜日韩在线电影| 99精品视频一区二区| 精品少妇一区二区三区视频免付费 | 精品99久久久久久| 最新国产の精品合集bt伙计| 国产毛片精品视频| 日韩欧美久久久| 国产老肥熟一区二区三区| 精品少妇一区二区三区视频免付费| 日韩成人免费电影| 在线播放亚洲一区| 三级久久三级久久久| 色狠狠av一区二区三区| 久久综合九色综合97_久久久 | 欧美极品aⅴ影院| 激情深爱一区二区| 久久久久久久久一| 国产麻豆成人传媒免费观看| 久久品道一品道久久精品| 久久99国内精品| 337p日本欧洲亚洲大胆色噜噜| 六月丁香综合在线视频| 欧美精品一区二区三区蜜臀| 久久精品二区亚洲w码| 日韩一区二区三区精品视频| 视频一区二区三区入口| 日韩一区二区三区在线| 麻豆精品在线看| 久久夜色精品国产欧美乱极品| 国产精品996| 国产精品美女久久久久久久网站|