我正在尝试在 java 中解析多个文件名(doc 文件)。我该怎么做呢?
我问了之前的一篇文章,得到了关于如何在 java 中解析文件名的答案。感谢那。
所以在一个目录中,我有多个文件(具有不同的名称)。例如,有文件
AA_2322_1
AA_2342_1
BB_2324_1
CC_2342_1
我只想解析中间的 4 位 - 5 位数字。
假设您有一个目录 C:\XYZ ,其中包含您上面列出的文件,并带有 .doc 扩展名。利用 FileFilter,您可以使用以下代码获取要查找的数字列表:
File directory = new File("C:/XYZ");
final ArrayList<String> innerDigits = new ArrayList<String>();
FileFilter filter = new FileFilter() {
@Override
public boolean accept(File pathname) {
if (!pathname.isFile() || !pathname.getName().endsWith("doc"))
return false;
// Extract whatever you need from the file object
String[] parts = pathname.getName().split("_");
innerDigits.add(parts[1]);
return true;
}
};
// No need to store the results, we extracted the info in the filter method
directory.listFiles(filter);
for (String data : innerDigits)
System.out.println(data);
你可以使用split
方法
String[] parts = filename.split("_");
现在您需要零件[1]
获取文件夹中所有文件的文件名- 使用此问题获取目录中所有文件的名称。然后使用该String.split()
函数解析文件名。