| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 6208 人关注过本帖
标题:如何用纯C获取一个文件目录。
只看楼主 加入收藏
xiagood
Rank: 1
等 级:新手上路
帖 子:6
专家分:2
注 册:2009-1-1
收藏
 问题点数:0 回复次数:6 
如何用纯C获取一个文件目录。
各位大侠:
您们好!
  请问如何使用C获取一个文件目录。如d:\temp下所有文件夹名称。
  谢谢。
搜索更多相关主题的帖子: 文件 获取 目录 
2010-01-22 17:31
韦春敢
Rank: 3Rank: 3
来 自:广西
等 级:论坛游侠
帖 子:91
专家分:142
注 册:2010-1-25
收藏
得分:0 
目录函数,所在函数库为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为文件属性,由以下字符代表
    ┏━━━━━━━━━┳━━━━━━━━┓

 
2007-5-8 14:37 回复  
 
a44802002
1位粉丝
 3楼

    ┃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等),
       返回可使用驱动器总数
int   mkdir(char *pathname)  建立一个新的目录pathname,成
功返回0
int   rmdir(char *pathname)  删除一个目录pathname,成功返
回0
char *mktemp(char *template) 构造一个当前目录上没有的文件
名并存于template中

哈哈
2010-01-27 01:29
jiangwu10057
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:341
专家分:667
注 册:2009-3-25
收藏
得分:0 
楼上知道的比我多多了·
2010-01-27 07:50
韦春敢
Rank: 3Rank: 3
来 自:广西
等 级:论坛游侠
帖 子:91
专家分:142
注 册:2010-1-25
收藏
得分:0 
我纳闷了:你的都有专家分数545了

哈哈
2010-01-28 12:47
jiangwu10057
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:341
专家分:667
注 册:2009-3-25
收藏
得分:0 
专家分只是好看·而已··
2010-01-28 16:23
韦春敢
Rank: 3Rank: 3
来 自:广西
等 级:论坛游侠
帖 子:91
专家分:142
注 册:2010-1-25
收藏
得分:0 
专家分到那去弄??

哈哈
2010-01-29 04:01
jiangwu10057
Rank: 7Rank: 7Rank: 7
等 级:黑侠
威 望:1
帖 子:341
专家分:667
注 册:2009-3-25
收藏
得分:0 
帮助别人解决些编程问题
2010-01-29 19:34
快速回复:如何用纯C获取一个文件目录。
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012404 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved