`

文件操作工具

F# 
阅读更多
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();
	}

}

 

分享到:
评论
发表评论

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

相关推荐

    C++文件操作工具类

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

    java文件操作工具类

    java文件操作工具类是java中针对文件操作的一个工具类,可以方便的读取,下载,上传文件等操作,希望可以帮到大家。

    java 文件操作工具类

    java 文件操作工具类

    C# .net 文件操作工具类

    C# .net 文件操作工具类

    文件操作工具类,包含判断文件编码适合windows和linux,文件压缩打包,判断文件格式,拷贝文件等内容

    文件操作工具类,包含判断文件编码适合windows和linux,文件压缩打包,判断文件格式,拷贝文件等内容

    文件操作工具类,支持文件上传和下载及断点续传

    文件操作工具类,支持文件上传和下载及断点续传

    javaio文件操作工具类,集成小部分对目录操作的方法

    javaio文件操作工具类,集成小部分对目录操作的方法,平时工作中学习中总结的部分方法方便大家使用~不妥之处望大家指教谢谢~!

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

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

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

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

    java csv文件读取工具类

    一个非常好用的csv文件操作工具

    windows系统文件操作监视工具

    在IT领域,尤其是在系统管理和安全监控方面,"Windows系统文件操作监视工具"是一个重要的概念。这类工具主要用于跟踪、记录和分析在Windows操作系统中对文件和文件夹进行的各种操作,包括创建、删除、修改等动作。这...

    img文件修改工具

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

    windows 文件分割工具

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

    文件分割工具(日志分割)

    用户在使用前应先阅读此文件,了解如何操作工具以及可能遇到的问题和解决方法。 3. **Lang**:这个可能是包含不同语言资源的文件夹,工具可能支持多语言界面,让用户可以根据自己的语言偏好进行设置。 在实际操作...

    java操作文件工具类

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

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

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

    30个java工具类

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

    用友ba_文件解压工具

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

    【强2】30个java工具类

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

Global site tag (gtag.js) - Google Analytics