复制指定目录下的指定文件,并修改后缀名 很重要,也很难!!!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了复制指定目录下的指定文件,并修改后缀名 很重要,也很难!!!相关的知识,希望对你有一定的参考价值。
package cn.idcast2; import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.FilenameFilter; import java.io.IOException; public class Day12 { /* * 需求:复制指定目录下的指定文件,并修改后缀名。 指定的目录是:jad 指定的文件是:.java文件 指定的后缀名是:.jad * * 数据源:e:\\java\\A.java * 目的地:e:\\jad\\A.jad * * 分析: * A:封装目录 * B:获取该目录下的java文件的File数组 * C:遍历该File数组,得到每一个File对象 * D:把该File进行复制 * E:在目的地目录下改名 */ public static void main(String[] args) throws IOException { File srcFolder = new File("e:\\java"); File destFolder = new File("e:\\jad"); if (!destFolder.exists()) { destFolder.mkdir(); } //File的文件名称过滤器功能 File[] fileArray = srcFolder.listFiles(new FilenameFilter() { @Override public boolean accept(File dir, String name) { // TODO Auto-generated method stub return new File(dir, name).isFile() && name.endsWith(".jpg"); } }); for (File file : fileArray) { String name = file.getName(); //得到e:\\java目录下的A.java文件名称 File newFile = new File(destFolder, name); //这里显示的为e:\\jad\\A.java copyFile(file, newFile); } File[] destFileArray = destFolder.listFiles(); for (File destFile : destFileArray) { String name = destFile.getName(); //得到e:\\jad目录下的A.java String newName = name.replace(".java", ".jad"); //得到e:\\jad目录下的A.jad File newFile = new File(destFolder, newName); //这里显示的为e:\\jad\\A.jad destFile.renameTo(newFile); } } private static void copyFile(File file, File newFile) throws IOException { // TODO Auto-generated method stub BufferedInputStream bis = new BufferedInputStream(new FileInputStream( file)); BufferedOutputStream bos = new BufferedOutputStream( new FileOutputStream(newFile)); byte[] bys = new byte[1024]; int len = 0; while ((len = bis.read()) != -1) { bos.write(bys, 0, len); } bis.close(); bos.close(); } }
以上是关于复制指定目录下的指定文件,并修改后缀名 很重要,也很难!!!的主要内容,如果未能解决你的问题,请参考以下文章
C#实现把指定文件夹下的所有文件复制到指定路径下以及修改指定文件的后缀名