listFilesとlistの違いをメモっておきたい.java
import java.io.File; public class OpenFile { public static void main(String args[]) { System.out.println("case1"); //ファイル名の一覧を取得する File file = new File("./sample"); File files[] = file.listFiles(); //取得した一覧を表示する for (int i=0; i<files.length; i++) { System.out.println("ファイル" + (i+1) + "→" + files[i]); } System.out.println("case2"); //Fileクラスのオブジェクトを生成する File dir = new File("./sample"); //listFilesメソッドを使用して一覧を取得する File[] list = dir.listFiles(); if(list != null) { //System.out.println(list.length); //取得した一覧を表示する for (int i=0; i<files.length; i++) { System.out.println("ファイル" + (i+1) + "→" + files[i]); } } else { System.out.println("null"); } System.out.println("case3"); File cdirectory = new File("./sample"); String filelist[] = cdirectory.list(); for (int i = 0 ; i < filelist.length ; i++){ System.out.println(filelist[i]); } } }
結果はこう↓
case1 ファイル1→.\sample\282d66123e0a1b0151014102.txt ファイル2→.\sample\415c7d190d021a045801.txt ファイル3→.\sample\42321e15420617036902.txt ファイル4→.\sample\54537f100209450443020c01.txt ファイル5→.\sample\641b231d3a03.txt ファイル6→.\sample\65280a04640e6b0216051a062301.txt ファイル7→.\sample\690c3e036c0a5c051c027802310a.txt ファイル8→.\sample\6e0b2d20.txt ファイル9→.\sample\7f753002380b7c1100015801.txt ファイル10→.\sample\85685e076406670a24042701180165023301.txt ファイル11→.\sample\8d481b1e50015601.txt case2 ファイル1→.\sample\282d66123e0a1b0151014102.txt ファイル2→.\sample\415c7d190d021a045801.txt ファイル3→.\sample\42321e15420617036902.txt ファイル4→.\sample\54537f100209450443020c01.txt ファイル5→.\sample\641b231d3a03.txt ファイル6→.\sample\65280a04640e6b0216051a062301.txt ファイル7→.\sample\690c3e036c0a5c051c027802310a.txt ファイル8→.\sample\6e0b2d20.txt ファイル9→.\sample\7f753002380b7c1100015801.txt ファイル10→.\sample\85685e076406670a24042701180165023301.txt ファイル11→.\sample\8d481b1e50015601.txt case3 282d66123e0a1b0151014102.txt 415c7d190d021a045801.txt 42321e15420617036902.txt 54537f100209450443020c01.txt 641b231d3a03.txt 65280a04640e6b0216051a062301.txt 690c3e036c0a5c051c027802310a.txt 6e0b2d20.txt 7f753002380b7c1100015801.txt 85685e076406670a24042701180165023301.txt 8d481b1e50015601.txt
参考
ファイル名の一覧を取得する - Javaちょこっとリファレンス
www.sejuku.net
違いを知るためにリファレンスに当たると、以下のように書いてあった。
String list()
この抽象パス名が示すディレクトリにあるファイルおよびディレクトリを示す文字列の配列を返します。File listFiles()
この抽象パス名が示すディレクトリ内のファイルを示す抽象パス名の配列を返します。
また忘れたときのために。