编写一个java 应用程序,利用RandomAccessFile类,把10个10到100之间互不相
编写一个java应用程序,利用RandomAccessFile类,把10个10到100之间互不相等的随机int型整数写人到一个名字为int.dat文件中,然后按相反顺序读...
编写一个java 应用程序,利用RandomAccessFile类,把10个10到100之间互不相等的随机int型整数写人到一个名字为int.dat文件中,然后按相反顺序读出这些数据置于TreeSet中,输出这个集合。(注意一个int型数据占4个字节)
展开
1个回答
2013-12-31
展开全部
import java.io.*;
import java.util.TreeSet;
import java.util.Iterator;
import java.util.Random;
public class RandomAccessFileTest2{
public static void main(String args[])throws Exception{
Random rnd = new Random();
int nums[]=new int[10];//要写入的数
for(int i=0; i<10; i++){
nums=rnd.nextInt(90)+10;
}
int posi[]={0, 10, 20, 30, 40, 50, 60, 70, 80, 90};//写入的位置
RandomAccessFile rf = new RandomAccessFile("RandomAccessFileTest2_.txt", "rw");
for(int i=0; i<256; i++){//生成点位字符
rf.write((byte)i);
}
//在指定的位置,写入int
for(int i=0; i<posi.length; i++){
rf.seek(posi[i]);
rf.writeInt(nums[i]);
}
//读出来、放入到TreeSet中
TreeSet<Integer> set=new TreeSet<Integer>();
for(int i=posi.length-1; i>-1; i--){
rf.seek(posi[i]);
set.add(rf.readInt());
}
rf.close();
//TreeSet的值印出来
for(Iterator<Integer> it = set.iterator(); it.hasNext(); ){
System.out.println(it.next());
}
}
}
请参考
追问
太感谢你 好人一路平安
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询