复制文件

CopyFile.java复制F:\temp下.java文件到F:\temp1,并更改F:\temp下文件的后缀名为jad
import java.io.File;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import com.maijun.interview.util.FileUtil;

public class CopyFile {
	public static void main(String args[]) throws InterruptedException {
		Matcher m = null;
		// 要复制和更改名字的文件夹路径
		File f = new File("f:\\temp");
		File[] files = f.listFiles();
		// 匹配java文件,如果是就复制到f:\\temp1,并更改成后缀名为.jad
		Pattern p = Pattern.compile("\\S+.java$");
		for (File forFile : files) {
			m = p.matcher(forFile.getName());

			if (m.matches() == true) {
				FileUtil fu = new FileUtil();
				fu.copyToOther(forFile, "f:\\temp1", forFile.getName());
				forFile.renameTo(new File(forFile.getParent()
						+ "\\"
						+ forFile.getName().substring(0,
								forFile.getName().indexOf(".")) + ".jad"));

			}
		}

	}
}


工具类,复制文件
package com.maijun.interview.util;

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class FileUtil {
	
	/*str要复制文件夹的路径
	 * f:要复制的文件
	 * str1:f文件的名字
	 * 如果复制成功就返回true,否则返回false
	 */
	public boolean copyToOther(File fromFile,String str,String str1){
		
		
		/*
		 * 首先判断str这个路径存在否
		 * 如果存在,在str路径下创建这个文件
		 * 利用文件流,读过来
		 */
		BufferedReader  fileBufferReader=null;
		BufferedWriter  fileBufferWriter=null;
		File directory=new File(str);
		
		
		/*判断路劲是否存在
		 * 有没有办法new出一个文件夹?
		 */
		if(directory.exists())
		{
			
			File toFile=new File(str,str1);
			try {
				
				fileBufferReader=new BufferedReader(new FileReader(fromFile));
				fileBufferWriter=new BufferedWriter(new FileWriter(toFile));
				String line=fileBufferReader.readLine();
				
				
				while(line!=null){
					fileBufferWriter.write(line);
					fileBufferWriter.newLine();
					fileBufferWriter.flush();
					line=fileBufferReader.readLine();
				}
				
			} catch (FileNotFoundException e) {
				e.printStackTrace();
			}
			catch (IOException e) {
				e.printStackTrace();
			}
			finally{
				
				try {
					
					if(fileBufferWriter!=null) {
						fileBufferWriter.close();
						fileBufferWriter=null;
					}
					if(fileBufferReader!=null) {
						fileBufferReader.close();
						fileBufferReader=null;
					}

				} catch (IOException e) {
					e.printStackTrace();
				}
			}
		}
		return false;
	}
}

你可能感兴趣的:(java,F#)