FileInputStream和FileouputStream继承与基类字节流InputStream,OutputStream,之前介绍了字符流的操作,其实我们可以简单的理解字节流加上编码就是字符流,在操作媒体文件的时候,我们肯定不能用字符流操作,字符流只是操作文本类型的文件,实现媒体文件的拷贝等功能使用字节流实现的,其实任何实现到IO流的操作,我们都可以发现字符流能实现的字节流也能实现,字节流实现的,字符流就不一定能实现。
下面提供一个关于FileInputStream和FileOutputStream的Demo:
package com.j2se.io;
import java.io.FileInputStream;
import java.io.FileOutputStream;
/**
* 字节流实现文本文件和图片的复制
* @author Administrator
*
*/
public class FileInputStreamOrFileOutputStreamDemo {
public static void main(String[] args) {
CopyTextFile();
}
/**
* 通过字节流实现文本文件的复制,图片的复制和文本文件的复制原理一样,就不续写
*/
private static void CopyTextFile() {
// TODO Auto-generated method stub
FileOutputStream fos=null;
FileInputStream fis=null;
try{
fos=new FileOutputStream("src/demo3.txt");
fis=new FileInputStream("src/demo2.txt");
byte[] buffer=new byte[1024];
int len=0;
while((len=fis.read(buffer))!=-1){
fos.write(buffer,0, len);
}
}catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}finally{
try{
if(fis!=null) fis.close();
if(fos!=null) fos.close();
}catch (Exception e) {
// TODO: handle exception
}
}
}
}