文件字节输入,输出流

一.文件字节输入流

一.使用输入流的4个基本步骤:
(1)设定输入流的源。
(2)创建指向源的输入流。
(3)让输入流读取源中的数据。
(4)关闭输入流。

二.具体实现

1~2步的实现:可以使用下列构造方法:
FileInputStream(String name);
使用给定的文件名name创建一个FileInputStream流。

FileInputStream(File file);
使用File对象创建一个输入流。

(上述两种方法中的参数name和file指定的文件称为输入流的源,输入流的作用是打开了一个到达文件的通道)
用法如下:

try{
 FileInputStream in = new FileInputStream("hello.txt"); 
}
catch(IOException e){
 System.out.println("File read error:"+e);
}

(第二种构造方法类似于上述)

3.让输入流读取源中的数据:
通过使用read方法实现:
int read();
该方法从源中读取单个字节的数据,返回0~225之间的一个整数,如果未读出字节就返回-1.

int read(byte b[]);
该方法从源中试图读取b.length个字节到字节数组b中,返回实际的读取字节数目。如果到达文件的末尾则返回-1.

int read(byte b[] ,int off,int len);
该方法从源中试图读取len个字节到字节数组b中,并返回实际读取的字节数目。参数off指定从字节数组的某个位置开始存放读取的数据。如果到达文件的末尾,则返回-1.

4.关闭流
close();
此方法为关闭流的方法。

注意:FileInputStream流顺序地读取文件,只要不关闭流,每次调用read方法就顺序地读取源中其余的内容直到源的末尾或被关闭。

二.文件字节输出流

一.使用输出流的基本步骤:
1.给出输出流的目的地。
2.创建指向目的地的输出流。
3.让输出流把数据写入到目的地。
4.关闭输出流。

二.具体实现
1.给出输出流的目的地:一般目的地为File对象或String对象指定的文件。

2.创建指向目的地的输出流:
我们可以使用FileOutputStream类具有刷新功能的构造方法创建指向文件的输出流:
FileOutputStream(String name);
此方法使用给定的文件名name创建FileOutputStream流。

FileOutputStream(File file);
此方法使用File对象创建FileOutputStream流。

(上述两种方法中的参数name和file指定的文件称为输出流的目的地,输出流的作用是打开了一个到达文件的通道)

3.使用输出流写字节
方法:
void write(int n);
该方法向目的地写入单个字节。

void write(byte b[]);
该方法向目的地写入一个字节数组。

void write(byte b[],int off,int len);
该方法给定字节数组中起始于偏移量off处取len个字节写到目的地。

void close();
关闭输出流。
注意:FileOutputStream流顺序地写入文件,只要不关闭流,每次调用write方法就顺序地向目的地写入内容,知道流被关闭

发布了35 篇原创文章 · 获赞 0 · 访问量 1292

猜你喜欢

转载自blog.csdn.net/c1776167012/article/details/103956606