单字符和多字符的文件输出

单字符输出

import java.io.*;
public class Copyfile {
public static void copyBytesFile(String sFileName,String dFileName) throws IOException{
//创建文件输入流对象和文件输出流对象
FileInputStream fis=new FileInputStream(sFileName);//文件输入流对象与源文件关联
FileOutputStream fos=new FileOutputStream(dFileName);//文件输出流对象与目标文件关联
//使用循环读取文件的内容,同时写出到外部磁盘文件
//从关联的源文件中读一个字节,如果到达文件末,返回值为-1,否则返回值为实际独到的字节数
int read=fis.read();
while(read!=-1){
   fos.write(read);//向关联的目标文件写出当前字节数组中的字节数据
   read=fis.read();
  }
fis.close();//清空缓存,关闭流对象
fos.close();
}
public static void main(String[] args) {
// TODO Auto-generated method stub
long t1,t2;
t1=System.currentTimeMillis();
try {
  Copyfile.copyBytesFile("a.mp3", "temp.mp3");
 } catch (IOException e) {
// TODO Auto-generated catch block
    e.printStackTrace();
 }
  t2=System.currentTimeMillis();
  System.out.println("用时:"+(t2-t1)+"ms");
 }
}

多字符输出

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
public class Copyfile {
   public static void copyBytesFile(String sFilename,String dFileName)
throws IOException{
//创建文件输入流对象和文件输出流对象
//文件输入流对象与源文件关联
FileInputStream fis=new FileInputStream(sFilename);
//文件输出流对象与目标文件关联
FileOutputStream fos=new FileOutputStream(dFileName);
//循环读取文件的内容,同时写出到外部文件
byte[] b=new byte[1024*10];
//从关联的源文件中读一个字节,保存到字节数组b,如果到底达文件末,返回值为-1
int read =fis.read(b);
while(read!=-1){
   fos.write(b);//向关联的目标文件写出一个字节
   read=fis.read(b);
 }
//清空缓存,关闭流对象
   fis.close();
   fos.close();
}
public static void main(String[] args) {
 // TODO Auto-generated method stub
   long t1,t2;
   t1=System.currentTimeMillis();
   try {
   Copyfile.copyBytesFile("a.mp3", "temp.mp3");
   } catch (IOException e) {
 // TODO Auto-generated catch block
     e.printStackTrace();
 }
   t2=System.currentTimeMillis();
   System.out.println("用时:"+(t2-t1));
 }
}

posted @ 2016-04-09 12:46  14软三2014330326杨佳  阅读(165)  评论(0编辑  收藏  举报