zoukankan      html  css  js  c++  java
  • java之 ------ 文件拷贝

    
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    
    public class FileCopyStream {
    
    	public static void main(String[] args) {
    		//fileCopy0("b.dat","d:/ex/a/","d:/ex/b/");
    		//fileCopy1("b.dat","d:/ex/a/","d:/ex/b/");
    		//fileCopy2("b.dat","d:/ex/a/","d:/ex/b/");
    		fileCopy2("1.mp3","d:/ex/a/","d:/ex/b/");
    		//fileCopy3("c.mp3","d:/ex/a/","d:/ex/b/");
    		//fileCopy3("d.txt","d:/ex/a/","d:/ex/b/");
    
    	}
    	private static void fileCopy0(String fileName, String dir1,String dir2){
    		try {
    			FileInputStream in = new FileInputStream(dir1+fileName);
    			FileOutputStream out = new FileOutputStream(dir2+fileName);
    			byte[] buffer = new byte[512];
    			in.read(buffer);
    			out.write(buffer);
    		} catch (FileNotFoundException e) {
    			e.printStackTrace();
    		} catch (Exception e) {
    		}
    	}
    	
    	//学习关流
    	private static void fileCopy1(String fileName, String dir1,String dir2){
    		FileInputStream in = null;
    		FileOutputStream out = null;
    		try {
    			in = new FileInputStream(dir1+fileName);
    			out = new FileOutputStream(dir2+fileName);
    			byte[] buffer = new byte[512];
    			in.read(buffer);
    			out.write(buffer);
    		} catch (FileNotFoundException e) {
    			e.printStackTrace();
    		} catch (Exception e) {
    		}finally{
    			try {
    				in.close();
    				out.close();
    			} catch (IOException e) {
    				throw new RuntimeException("文件无法关闭");
    			}
    		}
    	}
    	//可以拷贝大文件
    	private static void fileCopy2(String fileName, String dir1,String dir2){
    		FileInputStream in = null;
    		FileOutputStream out = null;
    		try {
    			in = new FileInputStream(dir1+fileName);
    			out = new FileOutputStream(dir2+fileName);
    			byte[] buffer = new byte[512];
    			int num = 0;
    			do{
    				num = in.read(buffer);
    				out.write(buffer,0,num);
    			}while(num>=0);
    			
    		} catch (FileNotFoundException e) {
    			e.printStackTrace();
    		} catch (Exception e) {
    			e.printStackTrace();
    		}finally{
    			try {
    				in.close();
    				out.close();
    			} catch (IOException e) {
    				throw new RuntimeException("文件无法关闭");
    			}
    		}
    	}
    	
    	//可以拷贝大文件
    	private static void fileCopy3(String fileName, String dir1,String dir2){
    		FileInputStream in = null;
    		FileOutputStream out = null;
    		try {
    			in = new FileInputStream(dir1+fileName);
    			out = new FileOutputStream(dir2+fileName);
    			byte[] buffer = new byte[512];
    			int num=0;
    			while(in.available()>0){
    				num = in.read(buffer);
    				
    				//最简单的加密
    				for(int i=0;i<num;i++){
    					buffer[i] = (byte)(buffer[i]+1);
    				}
    				
    				out.write(buffer,0,num);
    			}
    			
    		} catch (FileNotFoundException e) {
    			e.printStackTrace();
    		} catch (Exception e) {
    		}finally{
    			try {
    				in.close();
    				out.close();
    			} catch (IOException e) {
    				throw new RuntimeException("文件无法关闭");
    			}
    		}
    	}
    
    }
    

  • 相关阅读:
    SQL基础复习03--数据查询SQL语句(单表查询)
    SQL基础复习02--数据操纵SQL语句
    数据结构与算法01--复杂度
    SQL基础复习01--SQL基础与数据定义SQL语句
    Azure Data Studio的初步了解与使用
    ASP.NET Core Web API 使用DynamicLinq实现排序功能
    Vue3-说说Vue 3.0中Treeshaking特性?举例说明一下?
    JavaScript高频手写面试题
    Java常用文件操作-1
    Java 架构师之路(2)
  • 原文地址:https://www.cnblogs.com/zfyouxi/p/5395813.html
Copyright © 2011-2022 走看看