background image

目录函数,所在函数库为 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 等),