我需要在汇编中将数据写入txt文件,而不删除当前数据(即,添加数据,而不是替换它)。现在,每当我写作时,我都会替换当前文件中的所有内容。
以下是我正在使用的代码:
writeFile Proc
push ax bx cx dx
;open file
mov dx, offset fileName
mov cx, 0
mov ah,3ch
int 21h
mov filePointer, ax
;write to file
mov dx, offset dataToWrite ;data
mov cx, DATA_TO_WRITE_LEN ;size of data
mov bx, filePointer
mov ah, 40h
int 21h
;close file
mov bx, filePointer
mov ah, 3eh
int 21h
pop dx cx bx ax
ret
writeFile endp
有没有办法做到这一点?感谢:)
答案 0 :(得分:3)
您正在致电
mov ah,3ch
int 21h
即创建文件。如果在现有文件上使用此调用,则该文件将被截断。你应该使用
mov ah,3dh
int 21h
使用appropriate flags in AL 打开文件。