CCDOS文件名损坏的恢复

Author: 汤明贵 Date: 1916-03-11

        一.问题的提出
        由于在1.44单软上装有PUC5.0--WPS2.0系统及DBASE和GWBASIC三个子目录和系统,磁盘空间不多,要求学生经常删除备份文件,学生在删除时误将全部文件都删除了,其中有一名为"数据通讯.WPS" 的文章, 因有急用就使用PCTOOLS的U功能恢复之,恢复后"数据"两字变得杂乱无章,"通讯.WPS"正常,文件的长度和属并没有改变,在 WPS的选单上选该栏进入时提示为新文件,DOS的COPY,REN,DEL,TYPE命令都无法操作,连 PCTOOLS的文件服务中的W功能也不能进入,用DEBUG读32个绝对扇区时有三个扇区是该文的内容说明该文存在,用PCTOOLS文件服务中的E功能可以进入且文章完整,说明文件分配表无误,只有一种解释,那就是该文件的文件名损坏了。
        二.分析原因
        究其原因是该文件名原先是用汉字,占两个字节,而DOS的文件删除时只是将第一个字节改为E5,以后的各字节均没变化,在恢复文件时所改上的字同第二字节不能构成新的汉字,第二字节却与第三字节能构成一个汉字,于是第四字节空余,而这第四节是扩展的ASC码,DOS不认识,CCDOS又必须以双字节出现才能认识。
        造成该文件名的损坏。在实际操作中,引起这种现象的情况也不少,比如你在输入汉字和全角字文件名时输入了一个半角空格,这时你删除一个全角时,空格前的字符也可能随着后半字的被删而消失,而前一字节仍在文件名内,于是上一种情况就有可能发生。
        三.恢复文件名
        文件名损坏的恢复以PCTOOLS较为方便, 下面介绍以PCTOOLS5.0恢复该文件名的方法和步骤。
        1.找出该子目录所在的簇
        根据该文件名所在的位置,如果是在根目录, 可直接用第2条来恢复。由于该文件是在磁盘的二级子目录PUC中,必须先找出该子目录所在的簇。
        Path\Pctools  进入PCTOOLS
        F3            选磁盘功能选择目标磁盘
        M             进行磁盘映像
        F             选择映像文件
        F10           更换映像文件目录,将光标移到目标目录(PUC)上后回车
        G             进行该目录内文件的磁盘映像
        ←            连续按几次方向左移键,直到出现含有D 的映射扇区出现
        此时Start clust的值(xxxx)即该目录在该磁盘(逻辑盘)上的对应簇,
        2.找该目录所在扇区
        Esc   退出磁盘映像
        E     进入磁盘编辑
        F2    列磁盘编辑区目录
        C     选择磁盘编辑区C区
        xxxxx 输入刚找到的该目录在该磁盘(逻辑盘)上的对应簇值
        Page  用翻页键翻页,如果该文件在该目录中较前的位置,也许就在该簇的首扇区,不用翻页,有时目录扇区并不连续,此时继续向后翻页直到找到该文件名,此时的Sector的值(yyyyyyy)即是这个文件名在该磁盘 (逻辑盘)上的对应扇区。
        3.修改该文件名
        F3    进行磁盘编辑
        F1    将光标从HEX区切换到ASCⅡ区
        ↓    将光标从ASC 区第一行移到该文件名所在的行后停在第一个字母上
        N     将杂乱部分用几个大写英文字符或阿拉伯数字替代(一定要大写),为了以后改名方便可少用几字,其余部分全部用空格代替。不要改动其它部分。
        F5    将改后的结果存盘
        Esc   退出E功能
        Esc Y 退出PCTOOLS,文件名修改完成, 你也可以仍改回原文件名。
        文件名的损坏只出现在用汉字和全角字作文件名的时候,出现的机遇虽不很多,但出现后往往引起一些假想和恐慌,大家以后遇到这种情况时,应先想一想文件名是否损坏,如是,可用上法试着恢复。但要杜绝这种现象还是不用汉字和全角字作文件名。