1.フォルダのスキャン
\ WINDOWSの(フォルダを含まない)、すべてのファイルのディレクトリ、ファイル、およびそれらの最小と最大のサイズをプリントアウト(バイト):Cを横断
知識ポイント:LISTFILES()、長さ()、ISFILE()
1 パッケージIOTest; 2 インポートjava.io.Fileの; 3。 4つの。 パブリック クラスのテスト{ 5。 公共 静的 ボイドメイン(文字列[]引数){ 6。 7。 ファイルF = 新しい新しいファイル( "C:/ WINDOWS" ); 8つの。 ファイルFS [ ] = f.listFiles(); 9。 // 一時変数を使用する統計的最小値と最大値 10 のint最大= 0 ; 11。 INT分=(INT)(Math.pow(2、31である)、 - 1。); 12である INT MAX_INDEX = 0 ; 13 int型 min_index = 0 ; 14 15 のために(INT I 0 =; I <fs.length; I ++ ){ 16 であれば(FS [i]は.isFile()){ 17 であれば(FS [I] .LENGTH()> MAX){ 18 、最大=は(INT )FS [I] .LENGTH()。 19 MAX_INDEX = I。 20 } 21 であれば(FS [I] .LENGTH()<分間&& FS [I] .LENGTH()!= 0){ // 最小文件不能为0字节 22 分=(INT )FS [I] .LENGTH (); 23 min_index =I; 24 } 25 } 26である } 27 System.out.printf( "最大ファイルサイズ%Dバイト\ N-、%sで" ;、FS [MAX_INDEX]、max)は 28 System.out.printf(「最小ファイルた%S、%Dバイトサイズ」、FS [min_index]、分); 29 } 30 }
レンダリング:
2.フォルダのスキャン(詳細)
(下のすべてのサブフォルダのファイルを含む)指定したフォルダ内のすべてのファイル
知識ポイント:再帰、グローバル変数は、コードの最初の質問は、変更することができます
1 パッケージIOTest; 2 3。 インポートjava.io.Fileの; 4 5。 パブリック クラスのテスト{ 6。 // 以下のグローバル変数によって強制 7。 静的 int型の最大値= 0 ; 8 静的 INT分=(INT)(Math.pow(2、 31) -である1。); 9。 静的 int型 MAX_INDEX = 0 ; 10 静的 INT min_index = 0 ; 11。 静的文字列MAXFILE = NULL ; // 最大ファイル名 12は、 静的文字列MINFILE = nullを。 13 14 公共 静的 ボイドFUNC(ファイルf){ 15 であれば(f.exists()){ 16の ファイルFS [] = f.listFiles()。 17 のために(intは <; fs.length I ++ I I = 0 ){ 18 であれば(FS [i]が.isFile()){ // 若是文件 19 であれば(FS [i]が.LENGTH()> MAX){ 20 最大値=(INT )FS [I] .LENGTH()。 21 MAX_INDEX = I。 22 = MAXFILE String.valueOf(FS [MAX_INDEX]); 23である } 24 IF(FS [I] .LENGTH()<分間&& FS [I] .LENGTH()!= 0){ // 最小ファイルが0バイトであることはできません 25 分=(INT )FS [I] .LENGTH(); 26である min_index = Iは、 27 MINFILE = String.valueOf(FS [min_index]); 28 } 29 } 他 { // フォルダ場合、再帰呼び出しが探し続けFUNC 30 FUNC(FS [I]); 31である } 32 } 33である } 34はである } 35 36 公共 静的 ボイドメイン(文字列[]引数){ 37 [ 38である ファイルF = 新しい新しいファイル( "D:/プログラムファイル(x86の)"); // Cのディスク・ポインタ例外が発生する可能性がある場合、推定されますファイルアクセスの問題 39 FUNC(F); 40 System.out.printf( "最大ファイル%S、サイズ%Dバイト\ N-た" 、MAXFILE、max)は、 41である System.out.printf(「最小ファイル%S、サイズは%dバイト\ N-」であった、MINFILE、分); 42である } 43です }
レンダリング: