请教如何在一个二进制文件末尾往前读取一段数据?(40分)

  • 主题发起人 主题发起人 狼牙
  • 开始时间 开始时间

狼牙

Unregistered / Unconfirmed
GUEST, unregistred user!
请教如何在一个二进制文件末尾往前读取一段数据?
下面是我写的代码:
for(int i=0;i<6000;i++){//6000是不定数据。
fseek(infile,-i-128L,2);
fread(&buffer,1,1,infile);
}
现在buffer里面的就是倒过序的数据了。把她再倒一下:
for(int i=6000;i>0;i--){
...
}
效果倒是有。就是效率太差了。如果一次性读入大块数据。那么
如何进行倒序??也就是说如何读取一个二进制文件末尾偏离128
个字节开始的前面一段数据?并进行转换成文本数据?而可以存储。
 
现在的文件操作一般都是支持向后读,定位
向前读的文件操作好像是没有的。
 
呵呵,老兄啊,你搞什么呀

要得到前面的数据,你用文件长度减一下128不就完了,还至于这么麻烦,呵呵
 
多人接受答案了。
 
后退
顶部