我想索引數組中的多個文件名(.txt)。在java中索引文件名
例如
static String[] filename = new String[40];
,我必須在項目目錄40個文件。我想使用for循環將他們的名字插入到數組中,而不是手動輸入。 filename[0] = ".txt"
。
我想索引數組中的多個文件名(.txt)。在java中索引文件名
例如
static String[] filename = new String[40];
,我必須在項目目錄40個文件。我想使用for循環將他們的名字插入到數組中,而不是手動輸入。 filename[0] = ".txt"
。
我會看看創建一個File對象(包含要列出的文件的目錄),然後調用listFiles() - 迭代遍歷文件並從中填充字符串數組的方法。
FileFilter
ArrayList
for (int i = 0; i < 40; i++) {
filename[i] = ".txt";
}
旁邊的事實,String[]
是不是真的是最好的解決方案。關於使用一個ArrayList是什麼? http://download.oracle.com/javase/1.4.2/docs/api/java/util/ArrayList.html
File dir = new File(dirname);
String[] filenames = dir.list();
編輯: 示例程序列出了當前目錄下的文件:
import java.io.*;
class dir {
public static void main(String[] argv) {
File dir = new File(".");
String[] filenames = dir.list();
for (int i= 0; i < filenames.length; i++) {
System.out.println(filenames[i]);
}
}
}
當我嘗試打印字符串時,它顯示爲空。而不是dirname我輸入了文件的路徑? – HShbib
適合我。見上面的編輯。 –
實現一個FilenameFilter
接受其名稱結尾.txt
文件。
將該過濾器傳遞到theFile.listFiles(FilenameFilter)
以獲得一個不錯的File[]
,該文件包含位於theFile
所代表的目錄中的文本文件。
而忘記:
File[]
名稱的String[]
。如果需要File
,請保留一組File
。ArrayList
,Vector
) - 沒有必要。
您確定無法找到解決方案嗎?[此處](http://stackoverflow.com/questions/3154488/best-way-to-iterate-through-a-directory-in- JAVA)**? –
不知道我是否正確理解了這個問題......你不能簡單地使用[java.io.listFiles](http://download.oracle.com/javase/6/docs/api/java/io/File。 HTML#listFiles%28%29)? –
@Till Helge Helwiq:我試過了,它在showFiles(文件)上給我一個錯誤。我已經進入了文件所在的項目目錄路徑。仍然無法正常工作 – HShbib