纯css打造立体时钟
  • 12
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
By_jie

148_文件的拷贝

一、文件的拷贝

package edu.aeon.io;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
/**
 * [说明]:文件的拷贝
 * @author aeon
 *
 */
public class CopyFile {
    
    public static void testCopyFile() throws IOException{
        //源文件    目标文件
        File srcFile=new File("b:/test/test.txt");
        File destFile=new File("b:/test/testCopy.txt");
        //读取写入流
        InputStream inputStream =new FileInputStream(srcFile);
        OutputStream outputStream=new FileOutputStream(destFile);
        //建立1M的缓存数组
        byte by[]=new byte[1024];
        //实际读取文件的长度
        int len=0;
        //不断的将读取到的数据写入到指定文件(可一不存在、写入的时候自动建立)中
        while(-1!=(len=inputStream.read(by))){
            outputStream.write(by, 0, len);
        }
        //强制刷出
        outputStream.flush();
        //关闭流
        outputStream.close();
        inputStream.close();
    }
    
    public static void testCopyFile(String src,String dest) throws IOException{
        //源文件    目标文件
        File srcFile=new File(src);
        File destFile=new File(dest);
        /*//读取写入流
        InputStream inputStream =new FileInputStream(srcFile);
        OutputStream outputStream=new FileOutputStream(destFile);
        //建立1M的缓存数组
        byte by[]=new byte[1024];
        //实际读取文件的长度
        int len=0;
        //不断的将读取到的数据写入到指定文件(可一不存在、写入的时候自动建立)中
        while(-1!=(len=inputStream.read(by))){
            outputStream.write(by, 0, len);
        }
        //强制刷出
        outputStream.flush();
        //关闭流
        outputStream.close();
        inputStream.close();*/    
        testCopyFile(srcFile,destFile);
    }
    
    public static void testCopyFile(File srcFile,File destFile) throws IOException{
        //读取写入流
        InputStream inputStream =new FileInputStream(srcFile);
        OutputStream outputStream=new FileOutputStream(destFile);
        //建立1M的缓存数组
        byte by[]=new byte[1024];
        //实际读取文件的长度
        int len=0;
        //不断的将读取到的数据写入到指定文件(可一不存在、写入的时候自动建立)中
        while(-1!=(len=inputStream.read(by))){
            outputStream.write(by, 0, len);
        }
        //强制刷出
        outputStream.flush();
        //关闭流
        outputStream.close();
        inputStream.close();    
    }
    public static void main(String[] args) {
        String src="b:/test/test.txt";
        String dest="b:/test/testCopy.txt";
        try {
            //testCopyFile();
            //testCopyFile(src, dest);
            testCopyFile(new File(src),new File(dest));
        } catch (IOException e) {
            System.out.println("文件拷贝失败!");
            e.printStackTrace();
        }
    }
}

此处大家可根据自己的需求将文件的拷贝写一个工具类、比如写个CopyFileUtils工具类。

posted @ 2018-12-01 02:50  1024军团  阅读(163)  评论(0编辑  收藏  举报