三、编程提示
1. 与文件操作有关的部分中断调用方法
1)建立新文件
MOV AH,5BH
MOV CX,文件属性
DS:DX=ASCIIZ串指针(文件路径及名称)
INT 21H
返回参数:当CF=0时,表示成功,(AX)=文件代号。
注意:建立的是一个没有任何内容的空文件。
文件属性格式:
2)删除文件
MOV AH,41H
DS:DX=ASCIIZ串指针(文件路径及名称)
INT 21H
返回参数:当CF=0时,表示成功。
注意:只有普通文件才能删除。
3)打开文件
MOV AH,3DH
MOV AL,操作方式(0:读,1:写,2:读/写)
DS:DX=ASCIIZ串指针(文件路径及名称)
INT 21H
返回参数:当CF=0时,表示成功,(AX)=文件代号。
4)读文件或设备
MOV AH,3FH
MOV BX,文件代号(0:标准输入设备)
MOV CX,读取的最大字节数
DS:DX=数据缓冲区指针(存放读出的内容)
INT 21H
返回参数:当CF=0时,表示成功,(AX)=实际读出的字节数。
5)写文件或设备
MOV AH,40H
MOV BX,文件代号(1:标准输出设备)
MOV CX,写入的最大字节数
DS:DX=数据缓冲区指针(存放要写入的内容)
INT 21H
返回参数:当CF=0时,表示成功,(AX)=实际写入的字节数。
6)关闭文件
MOV AH,3EH
MOV BX,文件代号
INT 21H
返回参数:当CF=0时,表示成功。
注意:写文件后,只有关闭文件,才能真正写到外存储器中。
7)建立文件夹
MOV AH,39H
DS:DX=ASCIIZ串指针(文件夹的路径和名称)
INT 21H
返回参数:当CF=0时,表示成功。
8)删除文件夹
MOV AH,3AH
DS:DX=ASCIIZ串指针(文件夹的路径和名称)
INT 21H
返回参数:当CF=0时,表示成功。
注意:只有空文件夹才能删除。
2. 参考流程图
程序设计流程如图32.1所示。文件、文件夹操作的每一步都应判断操作是否成功,并显示相应的提示信息。采用接收字符串中断调用时,能正确定义接收缓冲区,文件操作时,能正确定义ASCIIZ串,字符串接收时能正确获取实际接收的字符串长度。
图32.1 程序设计流程图
3. 参考程序