描述
这个java.io.RandomAccessFile.read((byte[] b,int off,int len)方法从这个文件中读取最多 len 个字节的数据到一个字节数组中。
声明
以下是声明java.io.RandomAccessFile.read()方法。
public int read(byte[] b,int off,int len)
参数
b− 读取数据的缓冲区。
off− 数组 b 中写入数据的起始偏移量。
len− 读取的最大字节数。
返回值
此方法返回读入缓冲区的总字节数,如果由于已到达文件末尾而没有更多数据,则返回 -1。
异常
IOException− 如果发生 I/O 错误。如果已到达文件尾,则不抛出。
NullPointerException− 如果 b 为空。
IndexOutOfBoundsException− 如果off 为负,len 为负,或者len 大于b.length - off。
示例
下面的例子展示了使用java.io.RandomAccessFile.read()方法。
package com.tutorialspoint;
import java.io.*;
public class RandomAccessFileDemo {
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("c:/test.txt", "rw");
// write something in the file
raf.writeUTF("Hello World");
// set the file pointer at 0 position
raf.seek(0);
// read 2 bytes, starting from 1
System.out.println("" + raf.read(b1, 1, 2));
// set the file pointer at 0 position
raf.seek(0);
// read 3 bytes, starting from 4rth
System.out.println("" + raf.read(b2, 4, 3));
} catch (IOException ex) {
ex.printStackTrace();
}
}
}
假设我们有一个文本文件c:/test.txt,其内容如下。该文件将用作我们示例程序的输入 -
ABCDE
让我们编译并运行上面的程序,这将产生以下结果 -
2 3
相关用法
- Java Java.io.RandomAccessFile.readLine()用法及代码示例
- Java Java.io.RandomAccessFile.readFloat()用法及代码示例
- Java Java.io.RandomAccessFile.readShort()用法及代码示例
- Java Java.io.RandomAccessFile.readByte()用法及代码示例
- Java Java.io.RandomAccessFile.readFully()用法及代码示例
- Java Java.io.RandomAccessFile.readLong()用法及代码示例
- Java Java.io.RandomAccessFile.readDouble()用法及代码示例
- Java Java.io.RandomAccessFile.readUTF()用法及代码示例
- Java Java.io.RandomAccessFile.readBoolean()用法及代码示例
- Java Java.io.RandomAccessFile.readChar()用法及代码示例
- Java Java.io.RandomAccessFile.readInt()用法及代码示例
- Java Java.io.RandomAccessFile.writeInt()用法及代码示例
- Java Java.io.RandomAccessFile.skipBytes()用法及代码示例
- Java Java.io.RandomAccessFile.setLength()用法及代码示例
- Java Java.io.RandomAccessFile.writeChars()用法及代码示例
- Java Java.io.RandomAccessFile.write()用法及代码示例
- Java Java.io.RandomAccessFile.writeShort()用法及代码示例
- Java Java.io.RandomAccessFile.writeLong()用法及代码示例
- Java Java.io.RandomAccessFile.getFilePointer()用法及代码示例
- Java Java.io.RandomAccessFile.writeChar()用法及代码示例
注:本文由纯净天空筛选整理自 Java.io.RandomAccessFile.read() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。