A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

import java.io.*;
class  RandomAccessFileDemo
{
        public static void main(String[] args) throws IOException
        {
                //writeFile();
                readFile();
        }

        public static void readFile() throws IOException
        {
                RandomAccessFile raf = new RandomAccessFile("hebin.txt","r");
                raf.seek(9);
                byte[] buf = new byte[4];
                raf.read(buf);
                String name = new String(buf);
                int age = raf.read();
                System.out.println(name);
                System.out.println(age);
                raf.close();
        }

        public static void writeFile() throws IOException
        {
                RandomAccessFile raf = new RandomAccessFile("hebin.txt","rw");
                raf.write("lisi".getBytes());
                raf.writeInt(258);
                raf.write("wangwu".getBytes());
                raf.write(99);
                raf.close();
        }
}
raf.seek(9);里面到底该传多少才能取出wangwu的数据啊?

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1

查看全部评分

3 个回复

倒序浏览
lisi八个字节,258四个字节,一共seek(12)?
回复 使用道具 举报
import java.io.*;
class  RandomAccessFileDemo
{
        public static void main(String[] args) throws IOException
        {
           writeFile();
                 readFile();
        }
        public static void readFile() throws IOException
        {
                RandomAccessFile raf = new RandomAccessFile("hebin.txt","r");
                raf.seek(10);
                byte[] buf = new byte[6];
                raf.read(buf);
                String name = new String(buf);
                int age = raf.read();
                System.out.println(name);
                System.out.println(age);
                raf.close();
        }
        public static void writeFile() throws IOException
        {
         
                RandomAccessFile raf = new RandomAccessFile("hebin.txt","rw");
                raf.seek(0);
                raf.write("lisi".getBytes());
                raf.writeInt(258);
                raf.seek(10);
                raf.write("wangwu".getBytes());
                raf.write(99);
                raf.close();
        }
}
/*
* 在读取数据是一定在把指针调整到哪条数据的位置上
*/

回复 使用道具 举报
ying 发表于 2012-12-31 22:36
import java.io.*;
class  RandomAccessFileDemo
{

你的结果我试过了,打印不完整,还是没出来。。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马