後編です。
前編はこちら。
-----------------------------------------------------------------------------
さっきのlistメソッドも気になるので向学のためにやってみる。
一覧を取得して削除のところを変える。
前編はこちら。
-----------------------------------------------------------------------------
さっきのlistメソッドも気になるので向学のためにやってみる。
一覧を取得して削除のところを変える。
<CODE> // ファイルの一覧を取得して削除する String[] fileNames = ff.list(); for (int i=0; i<fileNames.length; i++) {
削除対象:C:deltest
失敗です
aaa.txtは削除失敗です
bbb.txtは削除失敗です
やっぱり失敗です
なぜだかうまくいかない。
listFilesでできたので、見なかったことにしよう。
次はC:deltestcccddd.txtを削除できるようにしてみるとしよう。
同じようなことを繰り返してやれば良さそうだ。
-----------------------------------------------------------------------------
自力でここまで来ればたいしたもんです。
言いたいことはいろいろありますが、もうちょっと様子を見たいところです。
ちなみにlistメソッドで失敗した理由は、fileNamesの内容を見ると分かります。
<CODE> System.out.print(ff2.getName() + "は"); </CODE>
を
<CODE> System.out.print(fileNames[i] + "は"); </CODE>
に変えて実行してみると、
削除対象:C:deltest
失敗です
aaa.txtは削除失敗です
bbb.txtは削除失敗です
やっぱり失敗です
と出力されます。
一番最初のファイルオブジェクト(ff)は"C:deltest"で生成していたのに、
次のオブジェクト(ff2)は"aaa.txt"で生成しているわけです。
前回、"C:deltestaaa.txt"で生成したときはちゃんと削除できましたよね。
つまり、"aaa.txt"と言われても、どこのaaa.txtなのか分からないので
削除できなかったのです。
ff2を生成するときに、
<CODE> File ff2 = new File(ff.getPath() + File.separator + fileNames[i]); </CODE>
としてやれば、削除できるようになります。