FileUtils类的应用实例教程
FileUtils类的应用
1、写入一个文件;
2、从文件中读取;
3、创建一个文件夹,包括文件夹;
4、复制文件和文件夹;
5、删除文件和文件夹;
6、从URL地址中获取文件;
7、通过文件过滤器和扩展名列出文件和文件夹;
8、比较文件内容;
9、文件最后的修改时间;
10、计算校验和。
一、 复制文件或文件夹方法:
示例:
1 public class CopyFileorDirectory { 2 public static void main(String[] args) throws Exception { 3 File file1 =new File("path1"); 4 File file2 =new File("path2"); 5 File file3 =new File("path3"); 6 File file4 =new File("path4"); 7 File file5 =new File("path5"); 8 //将文件复制到指定文件夹中,保存文件日期的时间。 9 // 该方法将指定源文件的内容复制到指定目标目录中相同名称的文件中。 10 // 如果不存在,则创建目标目录。如果目标文件存在,则该方法将覆盖它。 11 FileUtils.copyFileToDirectory(file1,file2);//文件不重命 12 //将文件复制到一个新的地方(重命名文件)并保存文件日期的时间。 13 FileUtils.copyFile(file1,file3); 14 15 //复制文件夹到指定目录下,如果指定目录不存在则创建 16 FileUtils.copyDirectoryToDirectory(file2,file4); 17 18 //复制文件夹到指定目录下并重命名 19 FileUtils.copyDirectory(file4,file5); 20 21 //该方法将指定的源目录结构复制到指定的目标目录中。 22 FileUtils.copyDirectory(file4,file5, DirectoryFileFilter.DIRECTORY); 23 24 // 复制文件夹下第一级内容中指定后缀文件 25 IOFileFilter txtSuffixFilter = FileFilterUtils.suffixFileFilter(".txt"); 26 IOFileFilter txtFiles = FileFilterUtils.and(FileFileFilter.FILE, txtSuffixFilter); 27 FileUtils.copyDirectory(file4,file5, txtFiles); 28 29 // 复制文件目录结构及文件夹下第一级目录内指定后缀文件 30 FileFilter filter = FileFilterUtils.or(DirectoryFileFilter.DIRECTORY, txtFiles); 31 FileUtils.copyDirectory(file4,file5, filter,false);//preserveFileDate参数默认为true。 32 33 //将字节从URL源复制到文件目的地。如果它们还不存在,则将创建到目的地的目录。如果已经存在,文件将被覆盖。 34 URL source = new URL("http://imgsrc.baidu.com/baike/pic/ewe.jpg"); 35 FileUtils.copyURLToFile(source,file5,1000,1000); 36 37 // 等待NFS传播文件创建,并强制执行超时。该方法重复测试File.exists(),直到它返回true,或直到秒内指定的最大时间。 38 File file = new File("/abc/"); 39 boolean d = FileUtils.waitFor(file,100); 40 System.out.println(d); 41 } 42 }
二、删除文件或文件方法
1 public class FileorDirectoryDelete { 2 public static void main(String[] args) throws Exception{ 3 File file = new File("path1"); 4 File directory = new File("path2"); 5 //递归删除一个目录(包括内容)。 6 FileUtils.deleteDirectory(directory); 7 8 //删除一个文件,不会抛出异常。如果文件是一个目录,删除它和所有子目录。 9 FileUtils.deleteQuietly(file); 10 11 //清理内容而不删除它。 12 FileUtils.cleanDirectory(directory); 13 14 //删除一个文件,会抛出异常 15 //如果file是文件夹,就删除文件夹及文件夹里面所有的内容。如果file是文件,就删除。 16 //如果某个文件/文件夹由于某些原因无法被删除,会抛出异常 17 FileUtils.forceDelete(file); 18 } 19 }
三、创建目录
1 public class CreatDirectory { 2 public static void main(String[] args) throws Exception { 3 File file = new File("path"); 4 //创建一个文件夹,如果由于某些原因导致不能创建,则抛出异常 5 //一次可以创建单级或者多级目录 6 FileUtils.forceMkdir(new File("/Users/wuguibin/Downloads/folder")); 7 //为指定文件创建文件的父级目录 8 FileUtils.forceMkdirParent(file); 9 } 10 }
四、移动文件或文件夹
//移动文件夹,并重新命名 FileUtils.moveDirectory(new File("/Users/Downloads/file1"), new File("/Users/Downloads/file2/file3")); //移动文件夹,并给定是否重命名 FileUtils.moveDirectoryToDirectory(new File("/Users/Downloads/file1"), new File("/Users/Downloads/file2/"),false); //移动文件到指定文件夹中,并重新命名 FileUtils.moveFile(file1,new File("/Users/Downloads/海葡萄.jpen")); //移动文件到指定文件夹中,并给定是否创建文件夹 FileUtils.moveFileToDirectory(new File("/Users/Downloads/海葡萄.jpeg"), new File("/Users/Downloads/file2"),false);
五、判断文件是否相同或包含关系、获取文件或文件夹大小
//确定父目录是否包含指定子元素(一个文件或目录)。即directory是否包含file2,在比较之前,文件是标准化的。 boolean a = FileUtils.directoryContains(directory,file2); //比较两个文件的内容,以确定它们是否相同。 boolean b = FileUtils.contentEquals(file1, file2)
//获取指定文件或文件夹大小,有可能溢出,变为负值
long l = FileUtils.sizeOf(file1);
System.out.println(l+"KB");
//获取指定文件或文件夹大小,不溢出
BigInteger bi= FileUtils.sizeOfAsBigInteger(file1);
System.out.println(bi+"kb");
//递归地计算一个目录的大小(所有文件的长度的总和)。
//注意,sizeOfDirectory()没有检测溢出,如果溢出发生,返回值可能为负。sizeOfDirectoryAsBigInteger()方法则不溢出。
FileUtils.sizeOfDirectory(file1);
FileUtils.sizeOfDirectoryAsBigInteger(file1);
六、比较文件新旧
//比较指定文件是否比参考文件创建或修改后时间晚 boolean b = FileUtils.isFileNewer(file1,file2)); //如果指定的文件比指定的日期更新。 SimpleDateFormat date = new SimpleDateFormat("yyyy/MM/dd"); String date1 = "2017/06/20"; boolean c = FileUtils.isFileNewer(file1,date.parse(date1)); boolean d = FileUtils.isFileNewer(file1,23243); //指定文件创建或修改后的时间是否比参考文件或日期早 FileUtils.isFileOlder(file1,232434); FileUtils.isFileOlder(file1,System.currentTimeMillis());
七、写入文件
//把集合里面的内容写入文件,以指定字符串结束写入 //void writeLines(File file,Collection<?> lines,String lineEnding,boolean append) ArrayList<String> list = new ArrayList<>(); String str1 = "Java"; String str2 = "JSP"; list.add(str1); list.add(str2); FileUtils.writeLines(file8,"GBK",list,"java",true); //把字符串写入文件 //参数1:需要写入的文件,如果文件不存在,将自动创建。 参数2:需要写入的内容 //参数3:编码格式 参数4:是否为追加模式( ture: 追加模式,把字符串追加到原内容后面) String data1 = "认真"; FileUtils.writeStringToFile(file,data1, "UTF-8", true); //把字节数组写入文件 byte [] buf = {13,123,34}; System.out.println(new String(buf)); FileUtils.writeByteArrayToFile(file13,buf,0,buf.length,true);
八、读取文件及获取输入输出流
//将文件的内容读入一个字符串中。 String str = FileUtils.readFileToString(file,"UTF-16" ); FileUtils.readFileToByteArray(file); //把文件读取到字节数组里面 byte[] readFileToByteArray(final File file) //把文件读取成字符串 ;Charset encoding:编码格式 String readFileToString(final File file, final Charset encoding) //把文件读取成字符串集合 ;Charset encoding:编码格式 List<String> list4 =FileUtils.readLines( new File("/Users/Shared/笔记/java.txt"),"UTF-8"); Iterator it = list4.iterator(); while (it.hasNext()){ Object obj=it.next(); System.out.println(obj); } //获取输入流 FileUtils.openInputStream(file); //获取输出流 FileUtils.openOutputStream(file);
以上是FileUtils类的应用实例教程的详细内容。更多信息请关注PHP中文网其他相关文章!

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

小红书笔记怎么删除?在小红书APP中是可以编辑笔记的,多数的用户不知道小红书笔记如何的删除,接下来就是小编为用户带来的小红书笔记删除方法图文教程,感兴趣的用户快来一起看看吧!小红书使用教程小红书笔记怎么删除1、首先打开小红书APP进入到主页面,选择右下角【我】进入到专区;2、之后在我的专区,点击下图所示的笔记页面,选择要删除的笔记;3、进入到笔记页面,右上角【三个点】;4、最后下方会展开功能栏,点击【删除】即可完成。

小红书删除的笔记不能恢复。小红书作为一款知识分享和购物平台,为用户提供了记录笔记和收藏有用信息的功能。根据小红书的官方说明,已经删除的笔记是无法恢复的。小红书平台并没有提供专门的笔记恢复功能。这意味着,一旦在小红书中删除了笔记,无论是不小心误删还是其他原因,一般情况下是无法从平台上找回被删除的内容的。如果遇到特殊情况,可以尝试联系小红书的客服团队,看是否能够协助解决问题。

作为一名小红书的用户,我们都曾遇到过发布过的笔记突然不见了的情况,这无疑让人感到困惑和担忧。在这种情况下,我们该怎么办呢?本文将围绕“小红书发布过的笔记不见了怎么办”这一主题,为你详细解答。一、小红书发布过的笔记不见了怎么办?首先,不要惊慌。如果你发现笔记不见了,保持冷静是关键,不要慌张。这可能是由于平台系统故障或操作失误引起的。检查发布记录很简单。只需打开小红书App,点击“我”→“发布”→“所有发布”,就可以查看自己的发布记录。在这里,你可以轻松找到之前发布的笔记。3.重新发布。如果找到了之

使用添加链接功能在iPhone上链接AppleNotes。笔记:如果您已安装iOS17,则只能在iPhone上的AppleNotes之间创建链接。在iPhone上打开“备忘录”应用。现在,打开要在其中添加链接的注释。您还可以选择创建新备忘录。点击屏幕上的任意位置。这将向您显示一个菜单。点击右侧的箭头以查看“添加链接”选项。点击它。现在,您可以键入注释的名称或网页URL。然后,点击右上角的完成,添加的链接将出现在笔记中。如果要添加指向某个单词的链接,只需双击该单词即可将其选中,选择“添加链接”并按

小红书怎么在笔记中添加商品链接?在小红书这款app中用户不仅可以浏览各种内容还可以进行购物,所以这款app中关于购物推荐、好物分享的内容是非常多的,如果小伙伴在这款app也是一个达人的话,也可以分享一些购物经验,找到商家进行合作,在笔记中添加连接之类的,很多人都愿意使用这款app购物,因为不仅方便,而且有很多达人会进行一些推荐,可以一边浏览有趣内容,一边看看有没有适合自己的衣服商品。一起看看如何在笔记中添加商品链接吧!小红书笔记添加商品链接方法 在手机桌面上打开app。 在app首页点击

小红书作为一个生活方式分享平台,涵盖了美食、旅行、美妆等各个领域的笔记。许多用户希望在小红书上分享自己的笔记,但却不清楚如何操作。在这篇文章中,我们将详细介绍小红书发布笔记的流程,并探讨如何在平台上屏蔽特定用户。一、小红书发布笔记教程怎么弄?1.注册登录:首先,需要在手机上下载小红书APP,并完成注册登录。在个人中心完善个人资料是很重要的。通过上传头像、填写昵称和个人简介,可以让其他用户更容易了解你的信息,也能帮助他们更好地关注你的笔记。3.选择发布频道:在首页下方,点击“发笔记”按钮,选择你想

2022年,Apple为iPhone和iPad上的Notes应用程序添加了一项新功能,可让您快速扫描打印或手写文本并将其保存为数字文本格式。继续阅读以了解其工作原理。在早期版本的iOS和iPadOS上,将文本扫描到Apple的Notes应用程序中需要点击笔记的文本字段,然后点击弹出菜单中的“实时文本”选项。然而,Apple在2022年使现实世界的笔记数字化变得更加容易。以下步骤向您展示了如何在运行iOS15.4或iPadOS15.4及更高版本的设备上完成此操作。在iPhone或iPad上,打开“

大多数人会记下所有内容,包括食谱、生日、歌词等。在他们的iPhone的笔记应用程序上。但是许多iPhone用户报告说,他们错误地删除了iPhone上非常重要的笔记,现在他们非常紧张和沮丧。他们不知道如何在iPhone上恢复它。我们对此事进行了大量研究,并找到了两种从iPhone恢复已删除笔记的方法。在本文中,我们将解释这两种方法,您可以使用它们轻松取回已删除的笔记。如何通过笔记应用程序恢复已删除的笔记步骤1:您应该首先从iPhone上的主屏幕启动Notes应用程序。第2步:启动Notes应用程序
