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

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

?? cfile.txt

?? 主要介紹c++中文件得各種打開方法
?? TXT
字號:
CFile操作詳解 

各種關于文件的操作在程序設計中是十分常見,如果能對其各種操作都了如指掌,就可以根據實際情況找到最佳的解決方案,從而在較短的時間內編寫出高效的代碼,因而熟練的掌握文件操作是十分重要的。本文將對Visual C++中有關文件操作進行全面的介紹,并對在文件操作中經常遇到的一些疑難問題進行詳細的分析。
  1.文件的查找 
  當對一個文件操作時,如果不知道該文件是否存在,就要首先進行查找。MFC中有一個專門用來進行文件查找的類CFileFind,使用它可以方便快捷地進行文件的查找。下面這段代碼演示了這個類的最基本使用方法。 
  CString strFileTitle; 
  CFileFind finder; 
  BOOL bWorking = finder.FindFile("C:\\windows\\sysbkup\\*.cab"); 
  while(bWorking) 
  { 
  bWorking=finder.FindNextFile(); 
  strFileTitle=finder.GetFileTitle(); 
  } 
  2.文件的打開/保存對話框 
  讓用戶選擇文件進行打開和存儲操作時,就要用到文件打開/保存對話框。MFC的類CFileDialog用于實現這種功能。使用CFileDialog聲明一個對象時,第一個BOOL型參數用于指定文件的打開或保存,當為TRUE時將構造一個文件打開對話框,為FALSE時構造一個文件保存對話框。 
  在構造CFileDialog對象時,如果在參數中指定了OFN_ALLOWMULTISELECT風格,則在此對話框中可以進行多選操作。此時要重點注意為此CFileDialog對象的m_ofn.lpstrFile分配一塊內存,用于存儲多選操作所返回的所有文件路徑名,如果不進行分配或分配的內存過小就會導致操作失敗。下面這段程序演示了文件打開對話框的使用方法。 
  CFileDialog mFileDlg(TRUE,NULL,NULL, 
  OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT|OFN_ALLOWMULTISELECT, 
  "All Files (*.*)|*.*||",AfxGetMainWnd()); 
  CString str(" ",10000); 
  mFileDlg.m_ofn.lpstrFile=str.GetBuffer(10000); 
  str.ReleaseBuffer(); 
  POSITION mPos=mFileDlg.GetStartPosition(); 
  CString pathName(" ",128); 
  CFileStatus status; 
  while(mPos!=NULL) 
  { 
  pathName=mFileDlg.GetNextPathName(mPos); 
  CFile::GetStatus( pathName, status ); 
  } 
  3.文件的讀寫 
  文件的讀寫非常重要,下面將重點進行介紹。文件讀寫的最普通的方法是直接使用CFile進行,如文件的讀寫可以使用下面的方法: 
  //對文件進行讀操作 
  char sRead[2]; 
  CFile mFile(_T("user.txt"),CFile::modeRead); 
  if(mFile.GetLength()<2) 
  return; 
  mFile.Read(sRead,2); 
  mFile.Close(); 
  //對文件進行寫操作 
  CFile mFile(_T("user.txt "), CFile::modeWrite|CFile::modeCreate); 
  mFile.Write(sRead,2); 
  mFile.Flush(); 
  mFile.Close(); 
  雖然這種方法最為基本,但是它的使用繁瑣,而且功能非常簡單。我向你推薦的是使用CArchive,它的使用方法簡單且功能十分強大。首先還是用CFile聲明一個對象,然后用這個對象的指針做參數聲明一個CArchive對象,你就可以非常方便地存儲各種復雜的數據類型了。它的使用方法見下例。 
  //對文件進行寫操作 
  CString strTemp; 
  CFile mFile; 
  mFile.Open("d:\\dd\\try.TRY",CFile::modeCreate|CFile::modeNoTruncate|CFile::modeWrite); 
  CArchive ar(&mFile,CArchive::store); 
  ar<<  ar.Close(); 
  mFile.Close(); 
  //對文件進行讀操作 
  CFile mFile; 
  if(mFile.Open("d:\\dd\\try.TRY",CFile::modeRead)==0) 
  return; 
  CArchive ar(&mFile,CArchive::load); 
   ar>>strTemp; 
      ar.Close(); 
  mFile.Close(); 
  CArchive的 << 和>> 操作符用于簡單數據類型的讀寫,對于CObject派生類的對象的存取要使用ReadObject()和WriteObject()。使用CArchive的ReadClass()和WriteClass()還可以進行類的讀寫,如: 
  //存儲CAboutDlg類 
  ar.WriteClass(RUNTIME_CLASS(CAboutDlg)); 
  //讀取CAboutDlg類 
  CRuntimeClass* mRunClass=ar.ReadClass(); 
  //使用CAboutDlg類 
  CObject* pObject=mRunClass->CreateObject(); 
      ((CDialog* )pObject)->DoModal(); 
  雖然VC提供的文檔/視結構中的文檔也可進行這些操作,但是不容易理解、使用和管理,因此雖然很多VC入門的書上花費大量篇幅講述文檔/視結構,但我建議你最好不要使用它的文檔。關于如何進行文檔/視的分離有很多書介紹,包括非常著名的《Visual C++ 技術內幕》。 
  如果你要進行的文件操作只是簡單的讀寫整行的字符串,我建議你使用CStdioFile,用它來進行此類操作非常方便,如下例。 
  CStdioFile mFile; 
  CFileException mExcept; 
  mFile.Open( "d:\\temp\\aa.bat", CFile::modeWrite, &mExcept); 
  CString string="I am a string."; 
  mFile.WriteString(string); 
  mFile.Close(); 
 4.臨時文件的使用 

  正規軟件經常用到臨時文件,你經常可以會看到C:\Windows\Temp目錄下有大量的擴展名為tmp的文件,這些就是程序運行是建立的臨時文件。臨時文件的使用方法基本與常規文件一樣,只是文件名應該調用函數GetTempFileName()獲得。它的第一個參數是建立此臨時文件的路徑,第二個參數是建立臨時文件名的前綴,第四個參數用于得到建立的臨時文件名。得到此臨時文件名以后,你就可以用它來建立并操作文件了,如: 
  char szTempPath[_MAX_PATH],szTempfile[_MAX_PATH]; 
  GetTempPath(_MAX_PATH, szTempPath); 
  GetTempFileName(szTempPath,_T ("my_"),0,szTempfile); 
  CFile m_tempFile(szTempfile,CFile:: modeCreate|CFile:: modeWrite); 
  char m_char='a'; 
  m_tempFile.Write(&m_char,2); 
  m_tempFile.Close(); 
  5.文件的復制、刪除等 
  MFC中沒有提供直接進行這些操作的功能,因而要使用SDK。SDK中的文件相關函數常用的有CopyFile()、CreateDirectory()、DeleteFile()、MoveFile()。它們的用法很簡單,可參考MSDN。 

1,判斷文件是否存在
    access(filename,mode);
2,對于不同用途又不同的文件操作,其中API函數CreateFile()也是比較有用處理方式,對于巨型文件很合適的其他的樓上的大都說了,不重復了.

[1]顯示對話框,取得文件名

CString FilePathName;
CFileDialog dlg(TRUE);///TRUE為OPEN對話框,FALSE為S***E AS對話框
if (dlg.DoModal() == IDOK)
    FilePathName=dlg.GetPathName();

相關信息:CFileDialog 用于取文件名的幾個成員函數:
假如選擇的文件是C:\WINDOWS\TEST.EXE
則(1)GetPathName();取文件名全稱,包括完整路徑。取回C:\WINDOWS\TEST.EXE
(2)GetFileTitle();取文件全名:TEST.EXE
(3)GetFileName();取回TEST
(4)GetFileExt();取擴展名EXE

[2]打開文件
CFile file("C:\HELLO.TXT",CFile::modeRead);//只讀方式打開
//CFile::modeRead可改為 CFile::modeWrite(只寫),
//CFile::modeReadWrite(讀寫),CFile::modeCreate(新建)
例子:
{
CFile file;
file.Open("C:\HELLO.TXT",CFile::modeCreate|Cfile::modeWrite);
.
.
.
}

[3]移動文件指針
file.Seek(100,CFile::begin);///從文件頭開始往下移動100字節
file.Seek(-50,CFile::end);///從文件末尾往上移動50字節
file.Seek(-30,CFile::current);///從當前位置往上移動30字節
file.SeekToBegin();///移到文件頭
file.SeekToEnd();///移到文件尾

[4]讀寫文件
讀文件:
char buffer[1000];
file.Read(buffer,1000);
寫文件:
CString string("自強不息");
file.Write(string,8);

[5]關閉文件
file.Close(); 

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
成人国产亚洲欧美成人综合网| 欧美精品丝袜中出| 91久久国产最好的精华液| 欧美高清视频一二三区| 国产精品女人毛片| 丝袜美腿亚洲色图| 色综合天天天天做夜夜夜夜做| 日韩一区二区三区四区五区六区| 国产精品久久看| 久久爱www久久做| 在线看日本不卡| 国产精品狼人久久影院观看方式| 久久精品999| 欧美一区二区日韩| 亚洲电影视频在线| 色妹子一区二区| 中文字幕五月欧美| 成人国产在线观看| 国产精品丝袜久久久久久app| 毛片基地黄久久久久久天堂| 欧美性xxxxx极品少妇| 亚洲精品乱码久久久久| 成人激情免费视频| 国产婷婷色一区二区三区四区 | 欧美区视频在线观看| 亚洲欧美综合色| 成人的网站免费观看| 欧美成人video| 麻豆高清免费国产一区| 欧美亚洲动漫精品| 亚洲线精品一区二区三区八戒| 欧美一区二区三区喷汁尤物| 成人精品国产福利| 色一区在线观看| 国产一区久久久| 麻豆国产91在线播放| 一区二区三区四区在线| www.亚洲人| 成人欧美一区二区三区视频网页| 国产精品一区二区三区四区| 26uuu国产一区二区三区| 韩国女主播一区| 久久综合成人精品亚洲另类欧美 | 成人av网址在线| 中文在线一区二区| 91碰在线视频| 亚洲一区二区五区| 欧美一区二区三区精品| 国产在线视视频有精品| 中文字幕精品在线不卡| 91视频免费播放| 五月婷婷综合在线| 精品国产伦一区二区三区免费| 国产高清不卡一区二区| 1区2区3区国产精品| 欧美日韩黄色影视| 国产自产高清不卡| 亚洲色欲色欲www| 日韩一区二区三区四区| 国产激情偷乱视频一区二区三区| 国产精品久久毛片a| 欧洲亚洲精品在线| 久久99蜜桃精品| 亚洲精品中文在线| 日韩精品在线一区| 成人av免费在线| 日韩激情一二三区| 国产精品毛片久久久久久久| 99国产欧美另类久久久精品| 亚洲午夜久久久久中文字幕久| www一区二区| 在线亚洲一区二区| 久久av资源站| 夜夜精品浪潮av一区二区三区| 欧美一区二区成人| 91色视频在线| 加勒比av一区二区| 一区二区三区在线观看视频| 日韩一区二区视频在线观看| 色综合天天狠狠| 国产精品性做久久久久久| 亚洲欧美综合网| 日韩一区二区三区在线视频| 97精品久久久久中文字幕 | 国产欧美一区二区精品性色超碰| 91久久线看在观草草青青| 久久精工是国产品牌吗| 一区二区欧美精品| 国产清纯美女被跳蛋高潮一区二区久久w | 精品一区二区在线看| 亚洲精品伦理在线| 国产精品久久午夜| 国产视频不卡一区| 精品国产3级a| 在线播放中文字幕一区| 色婷婷av一区| 92国产精品观看| 国产成人在线网站| 日本午夜精品视频在线观看 | 欧美激情一二三区| 欧美成人三级在线| 欧美一级一级性生活免费录像| 91成人免费在线| 色婷婷久久久综合中文字幕| 99久久久国产精品| av网站一区二区三区| 国产成人在线网站| 粉嫩嫩av羞羞动漫久久久| 精品一区二区三区视频| 蜜臀av性久久久久蜜臀aⅴ四虎| 亚洲已满18点击进入久久| 亚洲精品自拍动漫在线| 亚洲摸摸操操av| 亚洲人成精品久久久久| 国产精品国产三级国产aⅴ无密码 国产精品国产三级国产aⅴ原创 | 亚洲电影在线免费观看| 亚洲精品视频一区二区| 亚洲精选免费视频| 亚洲自拍欧美精品| 午夜精品久久久久久久蜜桃app| 亚洲一区二区欧美激情| 一区二区三区**美女毛片| 一区二区三区在线观看欧美| 亚洲国产日韩一区二区| 丝袜脚交一区二区| 免费成人在线观看| 国产精品一区二区在线播放 | 91麻豆精品国产91久久久久久久久 | 欧美日韩在线播放三区四区| 欧美日韩免费在线视频| 日韩你懂的在线观看| 久久久国际精品| 国产情人综合久久777777| 亚洲天堂av老司机| 日韩影院精彩在线| 国产精品一区二区在线观看网站| av中文字幕不卡| 欧美日韩国产高清一区二区三区| 日韩一级二级三级| 日本一区二区动态图| 亚洲一区二区三区四区在线| 日本中文字幕一区| 国产精品综合二区| 91免费小视频| 日韩欧美一区在线| 国产精品久久久久久久久免费桃花 | 福利电影一区二区| 在线视频欧美区| 日韩午夜精品电影| 国产精品黄色在线观看| 三级在线观看一区二区| 国产精品自拍网站| 在线精品视频一区二区三四| 日韩精品一区国产麻豆| 国产精品毛片a∨一区二区三区| 亚洲观看高清完整版在线观看 | 日韩精品欧美成人高清一区二区| 韩国精品久久久| 欧美少妇性性性| 国产女人18水真多18精品一级做 | 精品影院一区二区久久久| 国产电影精品久久禁18| 欧美日韩一区中文字幕| 国产日韩欧美a| 免费不卡在线观看| 一本色道久久综合亚洲91| 欧美精品一区二区三区久久久| 一区二区三区欧美亚洲| 国产乱码精品一品二品| 91.麻豆视频| 亚洲欧美日本韩国| 国产寡妇亲子伦一区二区| 欧美精品色综合| 亚洲靠逼com| 国产+成+人+亚洲欧洲自线| 91精品国产色综合久久久蜜香臀| 亚洲视频在线观看三级| 国产一区在线观看麻豆| 337p亚洲精品色噜噜| 亚洲人精品午夜| av在线不卡免费看| 久久久噜噜噜久噜久久综合| 青草国产精品久久久久久| 欧美性色aⅴ视频一区日韩精品| 国产精品久久久久久久久免费桃花| 国产综合色在线| 欧美第一区第二区| 麻豆高清免费国产一区| 欧美日韩精品久久久| 亚洲综合丝袜美腿| 色琪琪一区二区三区亚洲区| 亚洲青青青在线视频| 国产99久久久国产精品| 久久久99免费| 国产精品一区久久久久| 国产亚洲福利社区一区| 国产精品小仙女| 中文字幕精品一区二区三区精品| 国产精品自拍网站| 中文字幕在线不卡一区二区三区|