互換性のために、アプリケーションを Java 7 から Java 6 にダウングレードしようとしています。ただし、Jave 6 の listFiles() を使用すると、Windows マシンの c ドライブで NullPointerException が発生します (isHidden() は true を返します)。Java 7 の FileTreeWalker はうまく機能したので、これは Windows の問題ではないと思いますね。私はこのコードを使用しました:
public class Filewalker {
public void walk( String path ) {
File root = new File( path );
File[] list = root.listFiles();
for ( File f : list ) {
if ( f.isDirectory() ) {
walk( f.getAbsolutePath() );
System.out.println( "Dir:" + f.getAbsoluteFile() );
}
else {
System.out.println( "File:" + f.getAbsoluteFile() );
}
}
}
public static void main(String[] args) {
Filewalker fw = new Filewalker();
fw.walk("c:\\" );
}
}
ボブ