黑马程序员技术交流社区
标题:
我明明用skipBytes()跳到第四个八位为什么结果是李四 Y王五 -李双 P
[打印本页]
作者:
潜伏
时间:
2013-12-1 18:55
标题:
我明明用skipBytes()跳到第四个八位为什么结果是李四 Y王五 -李双 P
import java.io.*;
class RandomAccessFileDemo
{
public static void main(String[] args) throws IOException
{
write();
read();
}
public static void write()throws IOException
{
RandomAccessFile acf=new RandomAccessFile("随机.txt","rw");
acf.write("李四".getBytes());
acf.writeInt(89);
acf.write("王五".getBytes());
acf.writeInt(45);
acf.skipBytes(8*4);
acf.write("李双".getBytes());
acf.writeInt(80);
acf.close();
}
public static void read()throws IOException
{
RandomAccessFile acf=new RandomAccessFile("随机.txt","rw");
acf.seek(8*3);// 要求在写入时候按照姓名和年龄共占八位的情况写
byte[] arr=new byte[4];
acf.read(arr);
System.out.println(new String(arr)+acf.readInt());
}
}
作者:
潜伏
时间:
2013-12-1 20:10
没人吗?》自己回一个
作者:
hurryup
时间:
2013-12-1 22:18
我试了一下,你多运行几遍就有效果了。
acf.skipBytes(8*4);在程序的位置不同,效果不同,放在尾部,就无效。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2