- PR -

指定ディレクトリ以下の階層構造の取得

1
投稿者投稿内容
hide
常連さん
会議室デビュー日: 2003/01/15
投稿数: 20
投稿日時: 2005-05-18 10:27
いつもお世話になっています。
指定ディレクトリ以下のディレクトリ階層構造を取得したいのですが、
何かよい方法がないでしょうか?
ご存知の方、いらっしゃいましたらご教授宜しくお願いいたします。
Edosson
ぬし
会議室デビュー日: 2004/04/30
投稿数: 675
投稿日時: 2005-05-18 10:56
下記のクラスを使います。
http://java.sun.com/j2se/1.4/ja/docs/ja/api/java/io/File.html
listFiles()、isFile()、isDirectory()を押さえておけば、
とりあえず目的は達せるかと思います。
hiro
常連さん
会議室デビュー日: 2005/03/10
投稿数: 32
投稿日時: 2005-05-18 10:59
Commons-ioにあるかも知れませんが
ヒントとしてjava.ioパッケージのFileクラスを使います。
File#list()メソッドからディレクトリ内部のファイル一覧を取得できるので
その一覧をディレクトリかファイルかチェックしてディレクトリであればもう一度呼び出すような再呼び出しするようなメソッドを自作すればできますよ。

Javaの学習教材としてはよくあるのでWebを探せば答えがあるかも知れません。
かつのり
ぬし
会議室デビュー日: 2004/03/18
投稿数: 2015
お住まい・勤務地: 札幌
投稿日時: 2005-05-18 12:32
再帰処理が必要になります。

Yahoo!で「java」「file」「再帰処理」で検索し、2番目にヒットしたURLですが、
http://www.ccad.sccs.chukyo-u.ac.jp/manualc/prgrm/AppletApp/net/dirsize/
です。

私もチラっと内容を確認しましたが、参考になると思いますよ。
かずくん
ぬし
会議室デビュー日: 2003/01/08
投稿数: 759
お住まい・勤務地: 太陽系第三惑星
投稿日時: 2005-05-18 12:40
WindowsのExplorer.exeのようにデスクトップがルートになるように取得したい場合、

javax.swing.filechooser.FileSystemView#GetRoot()

で、Rootのパスが取得できます。
まあ、指定ディレクトリ以下と質問しているから、ここまでは必要ないと思うけど、
参考までに。
hide
常連さん
会議室デビュー日: 2003/01/15
投稿数: 20
投稿日時: 2005-05-18 13:07
Edossonさん、hiroさん、かつのりさん、かずくんさん貴重なご意見どうも有難うございます。
皆さんのご意見を参考に再起処理でしてみました。
おかげさまで無事解決できました。
有難うございました。
1

スキルアップ/キャリアアップ(JOB@IT)