IO流

来源:互联网 发布:关于淘宝仅退款不退货 编辑:程序博客网 时间:2024/05/29 03:14

流是一组有序的数据序列,分为输入流和输出流两种。I/O(Input/Output,输入/输出)流提供了一条通道程序,可以使用这条通道把源中的字节序列送到目的地。
负责各种方式输入输出的类都放在了java.io包中,其中所有的输入流类都是InputStream(字节输入流)和Reader(字符输入流)的子类,所有的输出流都是OutputStream(字节输出流)和Writer(字符输入流)的子类。

FileInputStream  和   FiltOutputStream

 FileOutputStream out = new FileOutputStream(file);//创建对象

byte buy[]="aaaaaaaabrsa".getBytes();//FileOutputStream处理字节输出流

out.write(buy);//将数组信息写入文件中

out.close();


FileInputStream in = new FileInputStream(file);//创建对象

byte byt[]=new byte[1024];

int len = in.read(byt);//从文件中读取信息

in.close();

FileReader   和   FileWriter   

避免使用字节流读取不好出现乱码现象,所有采用字符流。FileReader流顺序地读取文件。

FileWrite out = new FileWrite(file);

String str="aaaaaaaaaaaaaa";

out.write(str);

out.close();


FileReader  in = new FileReader(file);

char byt[]=new char[1024];

int len = in.read(byt);

in.close();

缓存是I/O的一种性能优化,缓存流为I/O流增加了内存缓存区。

BufferedInputStream  和  BufferedOutputStream

文件>>>InputStream>>>BufferedInputStream >>>>目的地

flush()方法用于及时在缓存区没有满的情况下,也将缓存区的内容强制的写入到外设。


BufferedReader  和  BufferedWriter 

字符数据>>>>BufferedWriter >>>>OutputStreamWrite>>>>>Outputstream>>>>>文件

FileWrite fw=new FileWrite(file);

BufferedWriter  bufw=new BufferedWriter (fw);

bufw.write("aaaaaaaaaa");

bufw.close();

fw.close();


FileReader frw=newFileReade(file);

BufferedReader  bufr=new BufferedReader (fr);

String s = null;

int i= 0;

while((s=bufr.readLine())!=nu;;){

i++;

System.out.println(s);

}

bufr.close();

fr.close();


InputStreamReader是字符流Reader的子类,是字节流通向字符流的桥梁

OutputStreamWriter 是字符流Writer的子类,是字符流通向字节流的桥梁。








0 0
原创粉丝点击