Java 移动具有特定文件扩展名的文件
您好,我正在开发一个简单的程序,为了设置该程序,我需要该程序检查 zip 文件的目录,并且其中的任何 zip 文件都需要移动到另一个文件夹中。
假设我有folder1,它包含6个zip文件,然后我有另一个名为folder2的文件夹,我需要所有zip,并且只有folder1中的zip移动到folder2
感谢您对这个问题的任何帮助。
顺便说一句,我是一个菜鸟,所以任何代码示例将不胜感激
Hi i'm working on a simple program and for the set up of the program i need the program to check a directory for zip files and any zip files in there need to be moved into another folder.
Lets say i have folder1 and it contains 6 zip files and then i have another folder called folder2 that i need all the zips and only the zips in folder1 moved to folder2
Thank you for any help one this problem.
Btw i'm a noob so any code samples would be greatly appreciated
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(5)
对于
folder1
中的每个文件,使用String#endsWith()
查看文件名是否以".zip"
结尾。如果是,请将其移至folder2
。FilenameFilter
提供这是一个很好的方法(尽管这不是绝对必要的)。它看起来像这样(未经测试):
For each file in
folder1
, useString#endsWith()
to see if the file name ends with".zip"
. If it does, move it tofolder2
.FilenameFilter
provides a nice way to do this (though it's not strictly necessary).It would look something like this (not tested):
文件系统中匹配“*.zip”的模式称为“文件通配”。您可以使用以下文档轻松选择带有“.zip”文件全局的所有这些文件:
查找文件。 java.nio.file.PathMatcher 就是你想要的。或者,您可以正常列出目录,并使用文件名和 String 的“.endsWith()”方法,这将执行类似的操作。
The pattern of matching "*.zip" in a filesystem is called "file globbing." You can easily select all of these files with a ".zip" file glob using this documentation:
Finding Files. java.nio.file.PathMatcher is what you want. Alternatively, you can list directories as normal and use the name of the file and the ".endsWith()" method of String which will do something similar.
使用
FilenameFilter
Use a
FilenameFilter
列出 baseDir 中的所有文件,如果它以 '.zip' 结尾,则将其移动到
renameTo
List all file in baseDir, if it ends with '.zip' moves it to destDir
API of renameTo
我的解决方案:
My solution: