java.io.EOFException错误

qq_35211749 2016-06-03 06:36:29
import java.io.RandomAccessFile;
import java.io.IOException;
public class RandomAccessFileDemo1 {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
int data_arr[]={12,31,56,23,27};
try{
RandomAccessFile randf=new RandomAccessFile("temp.txt","rw");
for(int i=0;i<data_arr.length-1;i++) //依次写入文件
randf.writeInt(data_arr[i]);
for(int i=data_arr.length-1;i>=0;i--){ //定位到最后一个数据,倒序输出
randf.seek(i*4); //32位,4个字节
System.out.println(randf.readInt());
}
randf.close();
}catch(IOException e){
System.out.println("File access error:"+e);
}
}

}

书上的代码,输出java.io.EOFException,怎么改
...全文
148 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
copine 2016-06-03
  • 打赏
  • 举报
回复
off by 1 mistake。 写数据的循环条件错了,最后一个数没有写进去。 应为 i<data_arr.length。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧