使用Java提供IO流提供的FileInputStream FileOutputStream 对文件进行复制
代码:
public void CopyFile(String filename) throws IOException { //把目标文件路径传入,也可以在方法中去获取,getname FileInputStream fis = null; // 输入流 FileOutputStream fos = null; //输出流 File file = new File(filename); String name = filename.substring(0,filename.lastIndexOf(".")); //得到源文件除去后缀的文件名 String[] strArray = filename.split("\\."); int suffixIndex = strArray.length -1; String suffix = strArray[suffixIndex]; //源文件的后缀 String finalName = name+"_bak."+suffix; //目标文件名 try { fis = new FileInputStream(file); fos = new FileOutputStream(new File(finalName)); byte [] b = new byte[10]; int len ; while((len=fis.read(b))!=-1){ fos.write(b,0,len); // 此处必须是len 而不是b.length } } catch (FileNotFoundException e) { e.printStackTrace(); }finally { if(fis!=null){ fis.close(); } // 关闭流 if (fos!= null){ fos.close(); } } }