Java RandomAccessFile read()方法

java.io.RandomAccessFile.read(byte[] b) 方法从此文件读取多达b.length个数据字节到字节数组。

1 语法

public int read(byte[] b)

2 参数

b:数据被读出缓冲器中。

3 返回值

此方法返回读入缓冲区的总字节数,或如果没有更多的数据,因为该文件的末尾已到达返回-1。

4 示例 

package com.yiidian;

/**
 * 一点教程网: http://www.yiidian.com
 */
/**
 * java.io.RandomAccessFile.read(byte[] b) 方法的例子
 */
import java.io.*;

public class Demo {

    public static void main(String[] args) {
        try {
            byte[] b1 = {1, 2, 3};
            byte[] b2 = {1, 2, 3, 4, 5, 6, 7, 8};

            // create a new RandomAccessFile with filename test
            RandomAccessFile raf = new RandomAccessFile("d:/test.txt", "rw");

            // write something in the file
            raf.writeUTF("Hello World");

            // set the file pointer at 0 position
            raf.seek(0);

            // read the first 8 bytes and print the number of bytes read
            System.out.println("" + raf.read(b1));

            // set the file pointer at 0 position
            raf.seek(0);

            // read the first 8 bytes and print the number of bytes read
            System.out.println("" + raf.read(b2));
        } catch (IOException ex) {
            ex.printStackTrace();
        }

    }
}

假设test.txt文件内容如下:

ABCDE  

输出结果为:

3
8

热门文章

优秀文章