我将可序列化形式的对象导出到包含src,build文件的目录中。有些组共享文件名的开头,例如
lounge - 1,0
lounge - 2,4
dining room - 3,5
dining room - 4,6
dining room 5,2
我需要制作一个包含所有组的数组列表,所以在本例中是一个包含休息室和餐厅的数组。有人可以帮忙吗?
答案 0 :(得分:0)
方法File.list()
,它将为您提供目录中所有文件名的列表。循环遍历此列表,并从每个文件名中提取前缀,将它们放入集合中。
答案 1 :(得分:0)
new File(dir).list()
返回包含目录中所有文件的数组。
然后你可以迭代数组并检查如下:
file.getName().startsWith()
。
您还可以在调用FileFilter
时使用list()
,但它将需要分别为每个文件组调用列表。
答案 2 :(得分:0)
您可以使用File.list()
获取文件列表,然后通过将名称添加到HashSet
来生成唯一前缀列表,如下所示:
String[] fileList = new File("./src").list();
HashSet hset = new HashSet();
for(String s : fileList){
hset.add(s.substring(0,s.length()-6));// assumes all names follow this pattern...
}
System.out.println(hset.toString());