|
||||
对文本文件中软回车、控制符的灵活处理杜蕴杰 |
|
辽宁省铁岭市烟草专卖局(11200)杜蕴杰 目前流行的汉字排版系统 很多,每种汉字系统在处理文本文件时都有自己的特点,如金山汉字系统生成 的文本文件与标准的文本文件有很大差别,在自动换行处用软回车(8DH) 和软换行符(8AH)作为标志;并在文本部分的前面增加了一个1024字 节长的文件头,在文件头中含有文件结束符1AH;将ASCII码在7FH 和A0H之间的字符作为字体控制符等等。与该汉字系统处理文本文件方法类 似的其它汉字系统,如王码、四通等系统也被广泛使用。这就存在着在DOS 命令行状态下用DIR本领不能查看用这些系统编辑的文本文件,或查看过程 中出现杂乱无章的字符,既影响了DOS命令的使用,又给查找文件带来了不 便。 为此,笔者编制了一个小程序,该程序经编译连接成COM文件后即能使 用。该程序在显示利用上述系统编辑的文本文件时将其中的软回车和控制符等 进行了过滤,使文本文件内容能够正常显示出来。该程序的使用格式为:DT FILE 1[FILE2],其中FILE 1为要查看的文本文件名,如 果提供了文件名FILE 2,则将转换结果存放到文件FILE 2中,该 程序既可作为一个上述汉字系统的文本文件阅读器,也可作为一个特殊文本文 件的转换器,在实际工作中使用起来很方便。 程序清单: ***** ;DT.ASM code segment'code' org 100h assume cs:code,ds:code,es:code begin: jmp start name1: db 13 dup(0) name2: db 13 dup(0) flag db 01h buff db 00h handle1 dw 0005h handle2 dw 0006h start: push cs pop ds push cs pop ds mov si,005dh mov di,offset name1 lodsb cmp al,20h je exit1 loop0: mov cx,0008h loop1: stosb loop10:lodsb cmp al,20h jne loop11 loop loop10 jcxz next1 loop11:loop loop1 next1: cmp al,20h je next2 mov al,2eh stosb mov cx,0003h dec si loop2: lodsb cmp al,20h je next2 stosb loop loop2 next2: cmp flag,00h je next3 dec flag mov si,006dh mov di,offset name2 lodsb cmp al,20h jne loop0 next3: mov ax,3dooh mov dx,offset name1 int 21h jnb next4 exit1: jmp exit next4: mov handle1,ax cmp name2,00h je next41 mov ax,3c01h mov dx,offset name2 int 21h jc next41 mov handle2,ax jmp next5 next41:mov handle2,0001h next5: mov bx,handle1 mov ah,3fh mov cx,0001h mov dx,offset buff int 21h or ax,ax jz exit mov al,buff cmp al,0dh je screen cmp al,0ah je screen cmp al,7fh jb next5 cmp al,0a0h ja next7 cmp al,8dh jne next6 mov al,0dh next6: cmp al,8ah jne next5 mov al,0ah next7: cmp al,0ffh je next5 screen:mov buff,al mov bx,handle2 mov cx,0001h mov dx,offset buff mov ah,40h int 21h jmp next5 exit: mov ah,3eh mov bx,handle1 int 21h mov bx,handle2 int 21h mov ax,4c00h int 21h code ends end begin ***** (计算机世界报 1994年 第22期) |
周报全文频道联系方式:010-68130909 |
||||||
| 【关于我们】 【广告服务】 【周报发行】 【投稿指南】 【投稿声明】 【联系方式】 【法律声明】 【媒体手册】 【编读往来】 |
||||||
| Copyright© ccw.com.cn,All rights reserved | ||||||
| 中国计算机世界出版服务公司版权所有 | ||||||