通用子目录文件显示方法的论文

通用子目录文件显示方法的论文

ID:10337569

大小:69.00 KB

页数:5页

时间:2018-07-06

通用子目录文件显示方法的论文_第1页
通用子目录文件显示方法的论文_第2页
通用子目录文件显示方法的论文_第3页
通用子目录文件显示方法的论文_第4页
通用子目录文件显示方法的论文_第5页
资源描述:

《通用子目录文件显示方法的论文》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、通用子目录文件显示方法的论文findfirst和findnext采用递归算法实现的。子目录和子目录文件的属性是根据属性字来判断。属性字格式如下图所示:-----------------

2、7

3、6

4、5

5、4

6、3

7、2

8、1

9、0

10、-----------------第0位(只读位):取1表示只读第1位(隐含位):取1表示隐含第2位(系统位):取1表示系统第3位(卷标位):取1表示卷标第4位(子目录位):取1表示子目录第5位(归档位):取1表示归档第6、7位:保留未用在子目录及出错。作用chkdska:,系统提示:cannotchdirto

11、a:temp,treepastthispointnotprocessed使用本程序,运行结果认为temp为一文件,其属性为hsrald,表示这是一个子目录,可据此推猜其为一加密子目录,可进一步用norton工具软件解密。三、实现实例实例是在386兼容机、borlandc++3.1集成环境和dos6.0操作系统支持下调试通过,实现源程序附后。需要指出的不足是,由于finclude<dos.h>#include<dir.h>#include<ctype.h>#include<strin

12、g.h>#include<io.h>#defineesc27#definectrl_break3#definepage_number22voiddiroperate(void);voidadd_attrib(structffblk);voidfull_screen_operate(void);chardriver[maxdrive]="",dir[maxdir]="";charfile[maxfile]="",ext[maxext]=""charcurdriver,curdir[maxdir];charol

13、ddriver,olddir[maxdir],axdir];charfn[13]="*.*";intpage_sum=0,dir_sum=0,file_sum=0;charbuffer[80*25];char*buffer_pointer=buffer;charctrl_bresk_flag;charattrib[7]="";main(intargc,char*argv[]){curdriver=getdisk();getcaxdir);driver[0]=curdriver+`a';if(argc>2){printf

14、("toomuchparameters!");exit(0)}if(argc==2){fnsplit(argv)[1],driver,dir,file,ext);if(strcpy(file)!=0){strcpy(file,exr,13);strcpy(fnfile);};if(strlen(driver)!=0){setdisk(toupper(driver[0])-`a')setdisk(toupper(drive[0])-`a')getcaxdir);strcpy(-1==0)printf("nosub_dire

15、ctories.")elseprintf("%ddirectories.",dir_sum-1)if(file_sum==0)printf("nofiles.")elseprintf("%dfiles.",file_sum);if(strlen(driver)!=0){chdir(olddir);};setdisk(curdriver);chdir(curdir);return(0);}voiddir_operate(void){structffblkdirment;intdone,p,byte_num;un

16、signedintyear,month,date,hourminute;charpath[maxdir];/*begintosearchallpossiblefiles*/done=findfirst(fn,dirment,0x2f);getcaxpath);dir_sum++;page_sum++;if(page_sum>=page_number)full_screen_operate();/*eanditsattributeintobuffer*/byte_num=sprintf(buffer_pointer,"d

17、irectory%s",path);buffer_poiner+=byte_unm;byte_unm=sprintf(buffer_pointer,"%6s",attrib);buffer_pointer+=byte_num;++;file_sum++;if(page_sum>=

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。