データを処理または読み取りするときにフォルダー内のすべてのファイルを自動的に読み取ることができると非常に便利です。そうしないと、ファイルパスを手動で変更する必要があります。これは非常に面倒です。このフォルダーに数個のファイルしかない場合は問題ありませんが、ファイルの数が非常に大きいと、多くの作業が発生し、いくつかのファイルも逃す可能性があります。
次に、このプロセスを実装する方法を説明しましょう。
Javaコード:
java.io.fileをインポートします。 java.io.filenotfoundexceptionをインポートします。 java.io.ioexceptionをインポートします。 java.util.arraylistをインポートします。 public class readfile {private static arraylist <string> listname = new ArrayList <String>(); public static void main(string [] args)throws exception {readallfile( "data/"); system.out.println(listname.size()); } public static void readallfile(string filepath){file file = new file(filepath); if(!file.isdirectory()){listname.add(file.getName()); } else if(file.isdirectory()){system.out.println( "file"); string [] filelist = file.list(); for(int i = 0; i <filelist.length; i ++){file readfile = new file(filepath); if(!readfile.isdirectory()){listname.add(readfile.getname()); } else if(readfile.isdirectory()){readallfile(filepath + "//" + filelist [i]); // recursive}}}} }}}関係する知識ポイント:
1。file.isdirectory()
このメソッドは、java.ioパッケージの内容に属し、この抽象パス名を表すファイルがディレクトリであるかどうかを確認するために使用されます。以下は、java.io.file.isdirectory()メソッドの宣言です。
public boolean isdirectory()
この抽象パス名を表すファイルがディレクトリである場合にのみ、メソッドはtrueを返します。そうしないと、メソッドはfalseを返します。
2。リストに要素と出力を追加する方法
例えば:
ArrayList <String> list = new ArrayList <String>(); list.add( "aaa"); list.add( "bbb"); list.add( "ccc"); for(int i = 0; i <list.size(); i ++){system.out.println(list.get(i)); } 3。再帰関数
再帰機能は、素人の言葉では、自分自身を呼び出します...
例:n!= n(n-1)!
関数f(n)= nf(n-1)を定義します
F(n-1)は、この定義で定義される関数です。これは再帰です。再帰の目的は、プログラミングを簡素化し、プログラムを読みやすくすることです。
上記はこの記事のすべての内容です。みんなの学習に役立つことを願っています。誰もがwulin.comをもっとサポートすることを願っています。