目录函数,所在函数库为 dir.h、dos.h
int chdir(char *path) 使指定的目录 path(如:"C:\\WPS")变成当前的工作目录,成
功返回 0
int findfirst(char *pathname,struct ffblk *ffblk,int attrib)查找指定的文件,成功
返回 0
pathname 为指定的目录名和文件名,如"C:\\WPS\\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("*.wps",&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 等),