c語言目錄操作

c語言目錄操作- 這裏給你提供一些C的目錄操作函數,原型聲明所在頭文件爲dir.h、dos.h,僅供參考:

int chdir(char *path) 使指定的目錄path(如:"C://WINDOWS")變成當前的工作目錄,成功返回0

int findfirst(char *pathname,struct ffblk *ffblk,int attrib)查找指定的文件,成功返回0
pathname爲指定的目錄名和文件名,如"C://WINDOWS//TXT"
ffblk爲指定的保存文件信息的一個結構,定義如下:
┏━━━━━━━━━━━━━━━━━━┓
┃struct ffblk ┃
┃{ ┃
┃ char ff_reserved[21]; /*DOS保留字*/┃
┃ char ff_attrib; /*文件屬性*/ ┃
┃ int ff_ftime; /*文件時間*/ ┃
┃ int ff_fdate; /*文件日期*/ ┃
┃ long ff_fsize; /*文件長度*/ ┃
┃ char ff_name[13]; /*文件名*/ ┃
┃} ┃
┗━━━━━━━━━━━━━━━━━━┛
attrib爲文件屬性,由以下字符代表
┏━━━━━━━━━┳━━━━━━━━┓
┃FA_RDONLY 只讀文件┃FA_LABEL 卷標號┃
┃FA_HIDDEN 隱藏文件┃FA_DIREC 目錄 ┃
┃FA_SYSTEM 系統文件┃FA_ARCH 檔案 ┃
┗━━━━━━━━━┻━━━━━━━━┛
例:
struct ffblk ff;
findfirst("*.DOC",&ff,FA_RDONLY);

int findnext(struct ffblk *ffblk) 取匹配finddirst的文件,成功返回0

void fumerge(char *path,char *drive,char *dir,char *name,char *ext)
此函數通過盤符drive(C:、A:等),路徑dir(/TC、/BC/LIB等),文件名name(TC、WPS等),擴展名ext(.EXE、.COM等)組成一個文件名,存在path中.

int fnsplit(char *path,char *drive,char *dir,char *name,char *ext)
此函數將文件名path分解成盤符drive(C:、A:等),路徑dir(/TC、/BC/LIB等),文件名name(TC、WPS等),擴展名ext(.EXE、.COM等),並分別存入相應的變量中.

int getcurdir(int drive,char *direc) 此函數返回指定驅動器的當前工作目錄名稱
drive 指定的驅動器(0=當前,1=A,2=B,3=C等)
direc 保存指定驅動器當前工作路徑的變量 成功返回0

char *getcwd(char *buf,iint n) 此函數取當前工作目錄並存入buf中,直到n個字節長爲爲止.錯誤返回NULL

int getdisk() 取當前正在使用的驅動器,返回一個整數(0=A,1=B,2=C等)

int setdisk(int drive) 設置要使用的驅動器drive(0=A,1=B,2=C等),返回可使用驅動器總數

int mkdir(char *pathname) 建立一個新的目錄pathname,成功返回0

int rmdir(char *pathname) 刪除一個目錄pathname,成功返回0

char *mktemp(char *template) 構造一個當前目錄上沒有的文件名並存於template中.

char *searchpath(char *pathname) 利用MSDOS找出文件filename所在路徑,此函數使用DOS的PATH變量,未找到文件返回NULL.

 From:http://hi.baidu.com/tjkvvv/blog/item/8e848e3ed139bcfb828b130e.html
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章