java读取txt文件,想自定义从第几个字节开始读和读几个字节,怎么做?

Python018

java读取txt文件,想自定义从第几个字节开始读和读几个字节,怎么做?,第1张

1.想自定义从第几个字节开始读

使用java.io.RandomAccessFile类,可使用构造方法RandomAccessFile af=new RandomAccessFile("C:\\1.txt","r")如果想从第100个字节开始读,可使用其方法:public void seek(long pos),如af.seek(100)2.读几个字节所有的输入流都有方法:public int read(byte[] b,

int off,

int len)

假如你想一次读20个字节,可使用:byte b[] = new byte[100]input.read(b,0,20)然后使用String str = new String(b,0,20)得到你读取的内容

RandomAccessFile类

public class RandomAccessFile extends Object implements DataOutput, DataInput, Closeable

此类的实例支持对随机访问文件的读取和写入。随机访问文件的行为类似存储在文件系统中的一个大型 byte

数组。存在指向该隐含数组的光标或索引,称为文件指针;输入操作从文件指针开始读取字节,并随着对字节的读取而前移此文件指针。如果随机访问文件以读取/写入模式创建,则输出操作也可用;输出操作从文件指针开始写入字节,并随着对字节的写入而前移此文件指针。写入隐含数组的当前末尾之后的输出操作导致该数组扩展。该文件指针可以通过

getFilePointer 方法读取,并通过 seek 方法设置。

public void seek(long pos)

throws IOException设置到此文件开头测量到的文件指针偏移量,在该位置发生下一个读取或写入操作。偏移量的设置可能会超出文件末尾。偏移量的设置超出文件末尾不会改变文件的长度。只有在偏移量的设置超出文件末尾的情况下对文件进行写入才会更改其长度。

参数:pos - 从文件开头以字节为单位测量的偏移量位置,在该位置设置文件指针。

抛出:IOException - 如果

pos 小于 0 或者发生 I/O 错误。