我试图在java中解析多个文件名(doc文件)。 我应该怎么做呢?
我问过上一篇文章并得到了如何在java中解析文件名的答案。 谢谢你。
所以在目录中,我有多个文件(名称不同)。例如,有文件
AA_2322_1
AA_2342_1
BB_2324_1
CC_2342_1
我想解析中间4位数字 - 5位数字。
答案 0 :(得分:1)
假设您有一个目录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);
答案 1 :(得分:0)
Getting the filenames of all files in a folder - 使用此问题获取目录中所有文件的名称。然后使用String.split()
函数解析文件名。
答案 2 :(得分:0)
您可以使用split
方法
String[] parts = filename.split("_");
现在你需要零件[1]