• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于VC++6.0的文件名批量轉(zhuǎn)換

      2007-07-05 01:40湯曉樂
      智能計算機與應(yīng)用 2007年3期
      關(guān)鍵詞:批量文件夾按鈕

      湯曉樂 楊 棟

      摘要:提出了一種能夠?qū)Υ罅课募M行批量轉(zhuǎn)換。從而提高處理文檔效率的方法。

      關(guān)鍵詞:VC文件名批量轉(zhuǎn)換

      中圖分類號TP311.1

      文獻標識碼B文章編號:1002-2422(2007)03-0024-02

      使用電腦時一定會遇到文件操作的問題,如對大量文件執(zhí)行復(fù)制、刪除、更改文件名等操作,這些問題如果僅靠Windows操作系統(tǒng)提供的功能來解決,費時費力。本文就提出了一種用VC實現(xiàn)的對文件名進行批量處理的方法,可以方便的實現(xiàn)對大量文件的操作。

      1實現(xiàn)原理

      本文要實現(xiàn)的是對大量同類文件進行按數(shù)字排序。首先通過手工輸入或者點擊瀏覽按鈕來實現(xiàn)文件夾的選擇;其次用CFileFind類來確定其中有多少文件;最后來對每個文件進行轉(zhuǎn)換并給出一個txt的目錄文件。

      2具體編程

      用Microsoft Visual C++6.0建立一個工程,選擇MFCApplication Wizard(exe)→Dialog Based。

      2.1建立一個的界面

      本文主要講述的是重命名這一功能,其中涉及到有幾個控件。

      可以手工輸入文件路徑以及文件格式,也可以通過點個文件來達到輸入路徑功能。當點擊重命名按鈕就可以實現(xiàn)文件名的以數(shù)字形式的批量轉(zhuǎn)換,而且會將文件的對應(yīng)目錄文件以文本文件形式保存。

      2.2添加函數(shù)

      void CBatDig::OnRename()

      {

      // TODO:Add your control notification handler code here CString strPath,strFilter,srcTitle,src,srcFile,dstFile.dstFileTitle;

      int i=1 ,iFileNum=1;

      CFile myFile,newFile;

      GetDlgItemText(IDC_EXT,strFilter);

      判斷文件夾是否為空

      if(strPath.IsEmpty())

      {

      MessaseBox(“請先選擇要批量轉(zhuǎn)換文件所在文件夾!”,“警告!”);

      return;

      }

      在該文件夾內(nèi)創(chuàng)建目錄文件

      src=strPath+“*.”+strFilher;

      CString list=strPath+“目錄.txtS”;

      if(myFile.Open(list,CFile:modeCreat ICFie:modeReadWrite,O)==0)return;

      CFileFind tempFind;

      BOOL isFound=(BOOL)tempFind.FindFile(SRC);

      確定該文件夾內(nèi)要處理的有多少個文件

      while(isFound)

      {

      isFound=(BOOL)tempFind.FindNextFile():

      if(tempFind.IsDirectory())

      continue;

      iFileNum++;

      }

      進行文件名的轉(zhuǎn)換,以文件數(shù)定轉(zhuǎn)換后的文件名,如果有9個文件,則以1-9的形式命名。

      如果是更多.如有99個文件,則為01-99的形式

      isFound=(BOOL)tempFind.gindFile(src);

      while(isFound&&i

      {

      isFound=(BOOL)tempFind.FindNextFile();

      if(tempFind.IsDirectory())

      confinue;

      srcFile=tempFind.GetFilePath();

      srcTitle=empFind.CetFileTide();

      if(iFileNum<10)

      {

      dstFileTitle.Format(“%d”i);

      }

      else if(iFileNum<100&&iFihNum>9)

      {

      dstFileTith.Format(“%02d”,i);

      }

      else if(iFikNum<1000&&iFileNum>99)

      {

      dstFileTitle.Format(“%03”,j);

      }

      else if(iFileNum<10000&&iFihNum>999)

      {

      dstFfleTide.Format(“%04d”,i);

      }

      else if(iFileNum<100000&&iFileNum>9999)

      {

      dstFileTith.Format(“%05d”,j);

      }

      else

      {

      dstFileTide.Format(“%d”,j);

      }

      實現(xiàn)轉(zhuǎn)換

      dstFile=strPath+dstFileTitle+“,”+strFilter;

      MoveFile(srcFile,datFile);

      存入目錄文件中,每一個初始文件名及其轉(zhuǎn)換后的文件名存為1行

      CString in;

      in=dstFileTide+srcTitle+“ ”;

      myFile.Write(in,in.GetLength());

      i++:

      SetWindowText(sreFile);

      }

      關(guān)閉myFile,tempFind

      myFile.Close();

      tempFind.Close();

      }

      3結(jié)束語

      用VC實現(xiàn)的文件名的轉(zhuǎn)換,比其僅用Windows操作系統(tǒng)提供的方法快上很多,而且該程序具有很好的可移植性,在其他程序中也可以靈活的使用。

      猜你喜歡
      批量文件夾按鈕
      批量提交在配置分發(fā)中的應(yīng)用
      Fast Folders,讓你的文件夾四通八達
      批量下載自己QQ空間上的相冊
      摸清超標源頭 大文件夾這樣處理
      調(diào)動右鍵 解決文件夾管理三大難題
      死循環(huán)
      不容忽視的空文件夾
      內(nèi)心不能碰的按鈕
      重塑批量集中采購
      仁寿县| 吉木乃县| 雅江县| 油尖旺区| 古丈县| 若尔盖县| 托里县| 九龙城区| 满城县| 固原市| 揭东县| 龙泉市| 大名县| 常州市| 黄山市| 罗城| 仪征市| 和龙市| 六枝特区| 宁阳县| 康乐县| 广平县| 浦北县| 南部县| 洛宁县| 安吉县| 吉安县| 新巴尔虎左旗| 华亭县| 贵港市| 昭平县| 米易县| 海南省| 泉州市| 金坛市| 长海县| 建水县| 邯郸县| 神农架林区| 芜湖市| 肇州县|