java - 如何使用该文件名的子字符串删除文件

标签 java

我有类似的文件

LOG_EXPORT_TIME_STAMP_IMAGES-LOG1-T20130119_000817
LOG_EXPORT_TIME_STAMP_IMAGES-LOG1-T20130119_000818
LOG_EXPORT_TIME_STAMP_IMAGES-LOG1-T20130119_000819

在位置“C:\temp”我想删除所有以“LOG_EXPORT_TIME_STAMP_IMAGES”开头的文件。我做了一些谷歌并得到了类似的代码

File file = new File("c:\\Temp\\LOG_EXPORT_TIME_STAMP_IMAGES-LOG1-T20130119_000817");

file.delete()

但据我观察,我必须传递文件的全名。我可以通过传递该文件的子字符串来完成吗?

最佳答案

首先列出目录下的文件

File[] files = directory.listFiles();

然后迭代数组并单独删除每个文件。这应该可以让您更好地控制选择要删除的文件。

这些内容:

File directory = new File("C:\temp");
File[] files = directory.listFiles();
for (File f : files)
{
    if (f.getName().startsWith("LOG_EXPORT_TIME_STAMP_IMAGES"))
    {
      f.delete();
    }
}

关于java - 如何使用该文件名的子字符串删除文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14412613/

相关文章:

java - javacv 中的 LineSegmentDetector (openCV 3)

java - java中如何停止从另一个方法调用一个方法?

Java 从不同的类调用方法

c# - 如何在 Java、C# 或 PHP 中将音频文件设为 "Trim"(对于浏览器)

java - 以编程方式提取 JarFile 模块名称的最佳方法是什么?

java - JAX-RS 资源生命周期性能影响

java - System.in.read 导致循环执行三次

java - 在 Controller 中设置 "systems"属性并在某个方面访问该属性

java - 如何从 ArrayList 中获取重复值?

java - 如何将 google.protobuf.Timestamp 与 protoc-jar-maven-plugin 一起使用?