编写一个程序,将 d:\java 目录下的所有.java 文件复制到 d:\jad 目录下,并将原来文件的扩展名从.java 改为.jad。...

package IO;
import java.io.*;
public class FileCopy 
{
	public static void main(String[] args) throws Exception
	{
		File srcDir = new File("java");
		if(!(srcDir.isDirectory() && srcDir.exists()))
		{
			throw new Exception("目录不存在");
		}
		//String[] list,File[] listFiles方法可以接收一个FilenameFilter参数,
		//FilenameFilter接口里包含了一个accept(File dir,String name)方法,
		//该方法依次对指定的File的所有的子目录或者文件进行迭代,如果方法返回true或者false
		
		/*File[] files = srcDir.listFiles(
			new FilenameFilter()
			{
				public boolean accept(File dir, String name)
				{
					return name.endsWith(".java");
				}
			}
		);*/
		
		File[] files = srcDir.listFiles((dir, name) -> name.endsWith(".java"));
		File destDir = new File("jad");
		if(!destDir.exists())
		{
			destDir.mkdir();
		}
		for (File file : files)
		{
			String destFileName = file.getName().replaceAll("\\.java$", ".jad");
			File destFile = new File(destDir, destFileName);
			try(FileInputStream fis = new FileInputStream(file);
			FileOutputStream fos = new FileOutputStream(destFile))
			{
				copy(fis,fos);
			}
		}
	}
	public static void copy(InputStream ips, OutputStream ops)throws IOException
	{
		byte[] bbuf = new byte[1024];
		int hasRead = 0;
		while((hasRead = ips.read(bbuf)) > 0)
		{
			ops.write(bbuf, 0, hasRead);
		}
	}
}

 

转载于:https://www.cnblogs.com/masterlibin/p/5647478.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值