JAVA 19 IO流之字节流

 

字节流两个基类
InputStream  读
OutputStream   写
 
字符流的两个基类
Reader
Writer
 
这四个抽象类派生出来的子类都是以其父类名作为子类后缀的
 
OutputStream
基本方法:
close()
flush()
write()   参数为:byte[]  b,int b
 
InputStream
基本方法
read()
int avaliable()   返回文件中的剩余字节个数。即文件大小,这样就可以定义一个数组来恰好装下数据。但是数据量太大不可以这样用
 
 
字节流的缓冲区:
BufferedOutputStream(os流对象)
write()方法
 
BufferedInputStream(oi流对象)
read()方法
 
 
 
 
 
 
举例应用:
import java.io.*;
public class Test {
 
 public static void main(String[] args) throws IOException
 {
   FileOutputStream fo = new FileOutputStream("C:\\Users\\zx\\Desktop\\zx.txt");
   fo.write("abcde".getBytes());
   //不需要刷新,就能显示。
   fo.close();
   
   FileInputStream fl = new FileInputStream("C:\\Users\\zx\\Desktop\\zx.txt");
   
   int ch=0;
   while((ch=fl.read())!=-1)
   {
    sop(fl.available());
    sop((char)ch);
   }
   
   
 }
 public static void sop(Object obj)
 {
  System.out.println(obj);
 }
}
 
图片文件拷贝应用
import java.io.*;
public class Test {
 
 public static void main(String[] args) throws IOException
 {
  FileOutputStream fo=null;
  FileInputStream  fi = null;
  try
  {
  fo = new FileOutputStream("d://2.png");
  fi = new FileInputStream("d://1.png");
  byte [] b = new byte[1024];
  int len = 0;
  while((len=fi.read(b))!=-1)
  {
   fo.write(b,0,len);
  }
  }
  catch(IOException e)
  {
  }
  finally
  {
    fi.close();
    fo.close();
  }
 
   
 }
 public static void sop(Object obj)
 {
  System.out.println(obj);
 }
}
 
posted @ 2015-09-30 16:46  hitz&x  阅读(124)  评论(0编辑  收藏  举报