标题如何管理你的计算机文档
栏目软件操作与技巧
作者西南师范大学 周竹荣
发布1993-04-16
何不让计算机自动来管理编辑的文档呢?我们可以编写一个小程序让计算机完成文档管理的大部分工作,让计算机把你编辑的文档的文件名、长度、编辑的日期、时间以及文件的标题自动存放在一个文件里,称之为归档。这个程序的思路是这样的:告诉计算机你要归档的文档的文件名(可以含通配符,这样可以成批处理文件)、文档所在目录的名字、你要进行归档的起止日期、还有你要保存这些信息的文件的名字(称之为备忘录),然后计算机自动将符合这些要求的文件的有关信息放入备忘录中,最后你可以通过编辑软件将备忘录中的信息排列整齐美观,去掉标题中打印用的控制字符。这样,把备忘录中内容打印出来,就可以得到一张清晰美观的对照表了。也可把此备忘录转换成数据库文件,对文档进行数据库管理。
程序如下:(本程序用TURBO PASCAL编制,在长城286EX/16机上运行通过)
program zzy;
USES dos,CRT;
VAR QT,JT,DT:DATETIME;
QSTIME,JSTIME:LONGINT;
I:INTEGER;
BWLNAME,LINE,CDIR,DQDIR,PLUS:STRING;
OUTF,F:TEXT;
DIRINFO:SEARCHREC;
BEGIN
WRITE('请输入起始时间(年月日如:19820103):');
READLN(QT.YEAR,QT.MONTH,QT.DAY);
QT.HOUR:=0;QT.MIN:=0;QT.SEC:=0;
WRITE('请输入结束时间(年月日如:1982 01 03):');
READLN(JT.YEAR,JT.MONTH,JT.DAY);
JT.HOUR:=23;JT.MIN:=59;JT.SEC:=59;
PACKTIME(QT,QSTIME);PACKTIME(JT,JSTIME);
write('请输入文档所在目录名(如:C:\TP):');READLN(CDIR);
WRITE('请输入文件名(可含通配符:)');READLN(PLUS);
WRITE('请输入备忘录名:');READLN(BWLNAME);
ASSIGN(OUTF,BWLNAME);REWRITE(OUTF);
getdir(0,dqdir);CHDIR(CDIR);
FINDFIRST(PLUS,ARCHIVE,DIRINFO);{寻找第一个符合条件的文件}
WHILE DOSERROR=0DO
BEGIN
IF(QSTIME<=DIRINFO.TIME) AND (DIRINFO.TIME<=JSTIME) THEN
BEGIN
unpacktime(dirinfotime,dt);
write(OUTF,DIRINFO.NAME);
for i:=1 to 16-length(dirinfoname) do write(outf,'');
write(outf,dirinfosize:7,'',dtyear,''DT.MONTH);
WRITELN(OUTF,'.',DT.day,'',dthour,':'dtmin);
ASSIGN(F,dirinfoname);RESET(F);
FORI:=1TO5DO{将文档的前五行写入备忘录}
BEGIN READLN(F,LINE);WRITELN(OUTF,LINE);END;
CLOSE(F);
END;
findnext(dirinfo);{寻找下一个文件}
END;
CLOSE(OUTF);chdir(dqdir);
END.
(西南师范大学 周竹荣)