`

文件操作工具

阅读更多
public class FileUtil
{

	/**
	 * 私有构造什么也不做仅仅是为了不让别人直接创建一个FileUtil实例
	 */
	private FileUtil()
	{

	}

	/**
	 * 查询某个目录下指定扩展名的文件
	 * 
	 */
	public static String[] findByExt(String Dir, String extNameReg)
	{
		File f = new File(Dir);
		FilenameFilter ff = new MyFileFilter(extNameReg);
		return f.list(ff);
	}

	/**
	 * 显示文件的内容
	 * 
	 */
	public static void showFile(String fileName)
	{
		StringBuffer sb = new StringBuffer(0);
		BufferedReader br = null;
		try
		{
			File f = new File(fileName);
			if (f.isFile())
			{
				sb.append(fileName).append("\r\n");
				FileReader fr = new FileReader(f);
				br = new BufferedReader(fr);
				String str = br.readLine();
				while (str != null)
				{
					sb.append(str).append("\r\n");
					str = br.readLine();
				}
				System.out.println(sb);
			}
		}
		catch (Exception e)
		{
			e.printStackTrace();
		}
		finally
		{
			if (null != br)
			{
				try
				{
					br.close();
				}
				catch (IOException e)
				{
					e.printStackTrace();
				}
			}

		}
	}

	/**
	 * 复制文件
	 * 
	 */
	public static void copyFile(String srcPath, String desPath)
	{
		try
		{
			File srcf = new File(srcPath);
			if (srcf.exists())
			{
				FileInputStream inStream = new FileInputStream(srcPath);
				FileOutputStream outStream = new FileOutputStream(desPath);
				byte[] buffer = new byte[1024];
				// 返回实际读取到文件内容的长度
				int length = inStream.read(buffer);
				while (length != -1)
				{
					// 如果不指定写入的文件长度,文件大小会超出复制的文件
					outStream.write(buffer, 0, length);
					length = inStream.read(buffer);
				}
				inStream.close();
				outStream.close();
			}
			else
			{
				System.out.println("源文件" + srcPath + "不存在!");
			}
		}
		catch (IOException e)
		{
			e.printStackTrace();
		}
	}

	/**
	 * 移动文件
	 * 
	 */
	public static void moveFile(String srcPath, String desPath)
	{
		try
		{
			copyFile(srcPath, desPath);
			File f = new File(srcPath);
			if (f.exists())
			{
				f.delete();
			}
		}
		catch (Exception e)
		{
			e.printStackTrace();
		}
	}

	/**
	 * 删除文件
	 * 
	 */
	public static void delFile(String filePath)
	{
		try
		{
			File f = new File(filePath);
			if (f.exists())
			{
				f.delete();
			}
		}
		catch (Exception e)
		{
			e.printStackTrace();
		}
	}
}

class MyFileFilter implements FilenameFilter
{
	private Pattern pattern;

	MyFileFilter(String regex)
	{
		pattern = Pattern.compile(regex);
	}

	public boolean accept(File dir, String name)
	{
		String nameString = new File(name).getName();
		String extName = nameString.substring(nameString.lastIndexOf(".") + 1);
		return pattern.matcher(extName).matches();
	}

}

 

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    Android文件操作工具类

    文件操作工具类,包含生成保存,复制,删除,读取,获取文件名,获取文件列表等等,只有你想不到,没有你找不到的Android端工具类,复制到项目中可直接使用

    C++文件操作工具类

    "C++文件操作工具类"是一个专门为C++开发者设计的实用工具,它简化了对文件进行读写、创建、删除等操作的过程。 首先,我们要理解C++中的文件操作基本概念。C++通过标准库中的`fstream`头文件提供了一套接口,允许...

    java properties文件操作工具类,可追加修改

    此工具类只用于Java后端在操作Properties文件的时候写的工具类,方便properties文件的存取操作

    java 文件操作工具类

    java 文件操作工具类

    C# .net 文件操作工具类

    C# .net 文件操作工具类

    file文件操作工具类

    通过输入文件地址和目标地址,对文件的复制操作,通过输入File对象和目标File对象,对文件的辅助操作

    FileUtils文件操作工具类

    实现文件的创建、删除、复制、压缩、解压以及目录的创建、删除、复制、压缩解压等功能

    java文件操作工具类分享(file文件工具类)

    Java 文件操作工具类分享 Java 文件操作工具类是 Java 语言中一个基本的文件操作类库,提供了多种文件操作方法,包括文件保存、文件读取、文件夹创建、文件删除等。以下是该工具类的主要知识点: 1. 文件保存方法...

    文件读写监控工具文件读写监控工具文件读写监控工具

    文件读写监控工具是计算机系统管理和维护中不可或缺的软件,它们可以帮助用户跟踪、记录和分析系统中的文件操作,包括打开、创建、修改、删除等动作。这类工具在故障排查、性能优化、安全审计等方面有着广泛的应用。...

    img文件修改工具

    【EXTRACT.TXT】:这个文件很可能是EXTRACT.EXE工具的使用说明或者帮助文档,详细解释了如何运行该工具,包括命令行参数、操作步骤以及可能遇到的问题和解决方法。 总的来说,WinImage的EXTRACT.EXE工具为处理img...

    安卓备份文件ab文件解压工具

    总的来说,“安卓备份文件ab文件解压工具”是Android用户和开发者处理备份数据的重要辅助工具,它简化了对`ab`文件的操作,使数据恢复和分析变得更为便捷。通过掌握这个工具的使用,用户可以更好地管理和保护自己的...

    windows 文件分割工具

    "Windows 文件分割工具"就是专门针对这类问题而设计的软件,用于将大文件分割成更小、更易于管理和处理的部分。这种工具特别适用于那些超出常规文本编辑器(如记事本)处理能力的大型日志文件。 一、文件分割的必要...

    java操作文件工具类

    文件工具类java操作文件工具类java操作文件工具类java操作文件工具类java操作文件工具类

    30个java工具类

    [工具类] 文件操作工具类 .java.txt [工具类] 序列化保存为XML文件的工具类 .java.txt [工具类] 一个压缩工具类.java.txt [工具类] 用java编写简单UDP网络通信程序 .java.txt [工具类] 中文验证.jsp.txt [工具类] ...

    二进制文件比较工具

    二进制文件比较工具是一种专门用于对比两个二进制文件差异的软件,它在IT行业中具有重要的应用价值。这类工具通常被系统管理员、程序员、...而HexCmp作为这样一个工具,其具体功能和操作方式则需要进一步的探索和学习。

    多文件合并工具filemerging.rar

    在"多文件合并工具filemerging"的压缩包中,我们只有一个名为"多文件合并工具filemerging"的文件,这可能是一个可执行程序,用于执行文件合并操作。为了使用这个工具,用户通常需要解压文件,然后运行这个程序,按照...

    用友ba_文件解压工具

    总的来说,用友ba_文件解压工具是企业用户管理和恢复用友备份数据的重要工具,它的存在大大简化了对ba_格式备份文件的操作,提高了数据管理的效率。正确理解和使用这个工具,对于保障企业信息系统的正常运行和数据...

    GHOST文件提取工具最新版

    标题中的"GHOST文件提取工具最新版"指的是一个用于处理GHOST镜像文件的软件工具,这类工具主要用于系统备份和恢复。GHOST是Ghost (Generic Hibernate to Disk) 的缩写,最初由赛门铁克公司开发,是计算机领域中广泛...

    SQL脚本文件合并工具

    2. **文件操作**:合并工具需要读取各个SQL文本文件,进行内容整合,并写入新的合并文件。这涉及到文件I/O操作,包括文件的打开、读取、写入和关闭。 3. **SQL语法兼容性**:由于不同的SQL脚本可能存在不同的语法...

    CAD vlx文件分离工具完美版

    VLX分离器的操作通常非常简单,比如"vlx分解.exe"这个程序很可能就是该工具的主执行文件,用户只需将Vlx文件拖放到程序界面上,或者通过菜单选择文件进行操作,软件就会自动完成分离过程。"vlx分解说明.txt"很可能是...

Global site tag (gtag.js) - Google Analytics