回 帖 发 新 帖 刷新版面

主题:关于文件书写方式的疑惑

向大家请教~~我的一个数据文件有100行,我只想把一个数据文件中的第8行进行更改,将扩展成两行。即原来的第8行数据,改变后,占用了第8和第9一共两行,那么,我是不是更改后,必须要将原来数据文件的第9行道到100行的数据,都得重新写到数据文件里呢?能不是只实现局部改动,而不影响后面的呢?从第9行写入到100行,内容太多了,比较浪费时间。有没有省时的方法呢?请大家指点,谢谢大家~~

回复列表 (共3个回复)

沙发

方法倒是有,在第八第九行的位置,插入一个换行符即可,具体操作可能得看看二进制文件和直接文件读写操作。
声明:我没操作过,只是有这个想法

板凳

其实文件在磁盘上,是像火车一样存放的。

如果你改动前和改动后,占用相同的字节数。那么可以实现你所谓的“局部改动”

否则,你必须把后面的内容全部重新排列。

尽管我们平常使用的记事本或者其他文本编辑器貌似像“局部改动”一样,实际上,它也是后面全部重新排列的。

如果你的情况符合上面的条件,那么你可以尝试用直接读写方式,即 

Open( 12 , File = yourname , access = 'direct' )

这需要你的文件每行都是一样长,否则可能会很复杂。

3 楼


哦,是这样的呀,谢谢谢谢啦~

我来回复

您尚未登录,请登录后再回复。点此登录或注册