給定一個File dir
我需要找到的最高的數字文件名(如果有的話)從目錄中獲得最高的數字文件名(INT) - Java的
我的方法:
// get the highest numeric file name(as int) from given directory
public static final int getHighestNumericFileName(File dir) {
int result = -1;
for (File f : dir.listFiles()) {
String name = f.getName();
name = name.substring(0, name.indexOf('.'));
if (StringUtils.isNumeric(name)) {
int val = Integer.parseInt(name);
if (val > result)
result = val;
}
}
return result;
}
考慮文件夾中的文件數可能會相當大(300k +),我擔心的是與性能有關。
這是一個可以接受的解決方案嗎?還有更好的方法嗎?
相關的文件夾內的所有文件(即你需要檢查所有文件或只有遵循特定名稱模式的文件)? –
@ThiagoPorciúncula所有完整的數字名稱是遊戲,其餘的都沒有興趣...我實際上希望有一些聰明的正則表達式的解決方案,但不能想到任何東西... –
那麼,如果你需要使用文本文件來管理300K它變得真正愚蠢。數據庫將是一個更好的主意 –