复习IO写了个文件复制的方法,但是为什么复制多少MB的时候出错啊,300多M的,但是他只说250M~~
请高手解答
package com.file.in; import java.io.*; import java.util.Date; public class Inputstream { public static void main(String[] args) throws IOException { String goalPath="g:"+File.separator+"Movie"+File.separator+"黑水1.rmvb"; String sourePath="g:"+File.separator+"Movie"+File.separator+"黑水.rmvb"; Inputstream.copyFile(sourePath, goalPath); } //复制一个文件的方法 public static void copyFile(String sourePath,String goalPath){ try { //定义开始的时间 Date sDate=new Date(); long startDate=sDate.getTime(); System.out.println("开始的时间是:"+sDate); OutputStream ops=new FileOutputStream(new File(goalPath));//输出流 BufferedOutputStream bops=new BufferedOutputStream(ops); InputStream ips=new FileInputStream(new File(sourePath));//输入流 BufferedInputStream bips=new BufferedInputStream(ips); byte[] b=new byte[1024]; int len; int temp = 0; while ((len=ips.read(b))!=-1) { bops.write(b, 0, len);//字符串,偏移量,字符数 temp=len; temp++; } bops.flush(); //结束的时间 Date eDate=new Date(); long endDate=eDate.getTime(); long allTime=endDate-startDate; System.out.println("结束的时间是"+eDate+",总共用了"+allTime+"毫秒"); System.out.println("复制成功,总共复制了"+temp+"MB" ); } catch (IOException e) { e.printStackTrace(); } } }