如何管理你的计算机文档

Author: 西南师范大学 周竹荣 Date: 1993-04-16

        何不让计算机自动来管理编辑的文档呢?我们可以编写一个小程序让计算机完成文档管理的大部分工作,让计算机把你编辑的文档的文件名、长度、编辑的日期、时间以及文件的标题自动存放在一个文件里,称之为归档。这个程序的思路是这样的:告诉计算机你要归档的文档的文件名(可以含通配符,这样可以成批处理文件)、文档所在目录的名字、你要进行归档的起止日期、还有你要保存这些信息的文件的名字(称之为备忘录),然后计算机自动将符合这些要求的文件的有关信息放入备忘录中,最后你可以通过编辑软件将备忘录中的信息排列整齐美观,去掉标题中打印用的控制字符。这样,把备忘录中内容打印出来,就可以得到一张清晰美观的对照表了。也可把此备忘录转换成数据库文件,对文档进行数据库管理。
        程序如下:(本程序用TURBO PASCAL编制,在长城286EX/16机上运行通过)
        program  zzy;
        USES  dos,CRT;
        VAR  QT,JT,DT:DATETIME;
        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(dirinfotime,dt);
        write(OUTF,DIRINFO.NAME);
        for  i:=1  to  16-length(dirinfoname)  do  write(outf,′′);
        write(outf,dirinfosize:7,′′,dtyear,′′DT.MONTH);
        WRITELN(OUTF,′.′,DT.day,′′,dthour,′:′dtmin);
        ASSIGN(F,dirinfoname);RESET(F);
        FORI:=1TO5DO{将文档的前五行写入备忘录}
        BEGIN  READLN(F,LINE);WRITELN(OUTF,LINE);END;
        CLOSE(F);
        END;
        findnext(dirinfo);{寻找下一个文件}
        END;
        CLOSE(OUTF);chdir(dqdir);
        END.
        (西南师范大学  周竹荣)