打开文件后,保存$08c8
想对该文件进行操作时,把保存的内容放$08c8就可以了。
那我会去试一试啦,太谢谢你啦。
这样就不会有打开文件的慢了,有希望了…………。
不错,成功了。谢谢啦 以前试过利用这个原理编了一个复制文件的程序,同时打开了两个文件,一个只读,一个写,一边读一边写,完毕关闭两个文件,文件小于49k的时候是成功的,大于49k 的时候就有问题了,超出49k的部分保存不了,试了很多次都不行,不知道有没有人可以帮忙写一个这样的程序?多点注释,谢谢。 NC2600的呢? 谢谢了!! 以下是引用litianzzk在2006-2-10 0:47:00的发言:以前试过利用这个原理编了一个复制文件的程序,同时打开了两个文件,一个只读,一个写,一边读一边写,完毕关闭两个文件,文件小于49k的时候是成功的,大于49k 的时候就有问题了,超出49k的部分保存不了,试了很多次都不行,不知道有没有人可以帮忙写一个这样的程序?多点注释,谢谢。
不会啊,我的那个压缩工具中就是这样弄的,有人压缩过1M的文件也没问题。
立天是怎样判断文件读取完成的?
打开文件后得到文件大小,文件多大读多少啊。
不会是没有读取完的问题的,因为复制出来的文件与原文件有相同的大小(从资源管理器中得知),只是超出49k的部分保存不了,也没占空间
后来我干脆一边读nand一边写文件了。。。。。。。真是晕
"打开文件后得到文件大小,文件多大读多少啊。"
不太清楚你是怎样获得文件大小的,用到INT $0514了吗?
我是这样:
LDA #$80
STA $08c9
.DB $00
.DW $0515
LDA $08c8
STA infile
.DB $00
.DW $0514
LDA $08fb
STA filesize
LDA $08fc
STA filesize+1
LDA $08fd
STA filesize+2
;filesize .db $00,$00,$00
其它地方应该不会出问题
这我就不知道用int $0514啦,我只知道打开文件之后文件大小可以这样得出:
filesize=(peek($08e2)+peek($08e3)*256)*16384+peek($08e4)+peek($08e5)*256
即filesize/16384的商放在$08e2,$08e3,余数放在$08e4,$08e5
所以我复制的时候就先以16384为长度,读(同时写进另一文件)商数那么多次,最后再以余数为长度读(同时写进另一文件)一次,这样就完了,关闭两个文件.
思路就是这样,理论上没什么问题,可就是出问题,可能是我自己的程序设计得有问题吧
今天重新把程序写了一遍,成功了,真不知道以前错在哪。。。
[求助]还是关于多文件读取
麻烦各位给一个例子好吗???还是不太懂啊。
怎样同时读取多个文件???
nc3k的,谢谢你们了
页:
[1]