简单的io编程

此程序实现了简单的文件内容的复制。程序中没有使用缓冲流,但速度依然很快,复制一个27.9M的文件,复制3次,用时分别为:1375 ms、 1391 ms、1516 ms,由此推论数组起到了缓冲流的作用。

 

 

import java.io.FileNotFoundException;
import java.io.IOException;

public class FileCopeTest {
	
	java.io.InputStream ins;
	java.io.OutputStream ops;

	public void fileCope(String inFileName,String outFileName){
		//new一个输入对象和一个输出对象
		try {
			long begin = System.currentTimeMillis(); 
			ins = new java.io.FileInputStream(inFileName);
			ops = new java.io.FileOutputStream(outFileName);
			//创建一个数组用以保存数据
			byte[] Bytes = new byte[ins.available()];
			ins.read(Bytes);
			ops.write(Bytes);
			//关闭流
			ins.close();
			ops.flush();
			ops.close();
			long end = System.currentTimeMillis(); 
			System.out.println("复制所用时间为:  "+(end-begin)+" ms");
		} catch (FileNotFoundException e) {
			System.out.println("找不到源文件,请检查文件名是否正确");
			System.exit(-1);
			
		} catch (IOException e) {
			System.out.println("文件复制错误");
			System.exit(-1);
		}
		System.out.println("复制成功");
	}
	
	//主程序入口
	public static void main(String args[]) throws java.io.IOException{
		//给文件设定路径
		String inFileName = "E:/world/world.rar";
		String outFileName = "E:/world/copeHello2";
		
		FileCopeTest fct = new FileCopeTest();
		fct.fileCope(inFileName, outFileName);
		
	}
}

你可能感兴趣的:(java,编程)