0

ファイルテキストの各行を読み取り、ファイルのテキストを処理して、結果を出力するJavaプログラムがあります。特定のフォルダ(ディレクトリ)にあるファイルごとに同じことをする必要があります。したがって、フォルダ内の各ファイルを調べて、テキスト..etcのコンテンツを抽出するプログラムが必要です。私の質問は、Javaを使用してフォルダ内の各ファイルをループする方法です。

4

2 に答える 2

6

Fileディレクトリを参照するオブジェクトを作成したら、を呼び出しlistFilesて、ディレクトリ内のすべてのファイルの配列を取得できます。

// assuming myDir is the File object that represents the directory
File[] dirContent = myDir.listFiles();
for (File f : dirContent)
{
    if (!f.isDirectory())
    {
        // process file.
    }
}

File#listFiles(FileFilter)または、適切なファイルフィルタを使用して呼び出すことにより、ディレクトリではないファイルのリストのみを取得できます。例えば:

// assuming myDir is the File object that represents the directory
File[] dirContent = myDir.listFiles(new FileFilter() {
    @Override boolean accept(File pathname)
    {
        return !pathname.isDirectory();
    }
});
for (File f : dirContent)
{
    // process file.
}
于 2012-10-14T22:22:25.150 に答える
0

これを行う別の方法を捨てたいと思います。このファイル検索および処理ソフトウェア: http: //www.softpedia.com/get/File-managers/JFileProcessor.shtml https://github.com/stant/jfileprocessor

名前、サイズ、日付で、Xまでのサブフォルダーまたはすべての深さでglobまたはregexを含むファイルを検索できます。リストウィンドウまたはファイルに保存できます。次に、Groovy(Javaと考えてください)スクリプトを実行して、ファイルのリストに対して必要なことを実行できます。それらをzipまたはtarし、sed、delete、move、copy files、grep、ls-lなどのリスト文字列を変更します。また、あるリストを別のリストに追加、削除、減算するなど、リストをマッサージすることもできます。

于 2017-09-01T22:50:50.710 に答える