- ベストアンサー
readdir()で得られるファイル・ディレクトリ情報の順番は?
Perlプログラムにて、 opendir(DIR, '.'); @dir_list = readdir(DIR); closedir(DIR); などとすると、そのディレクトリにあるファイルとディレクトリの一覧情報を得ることができますが、この場合、@dir_list にはどのような順番で情報が格納されるのでしょうか? readdir() 関数の仕様が知りたいです。ご存知の方、ぜひ教えてください。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
仕様という意味ではこちらになるでしょうね。 公式サイトですから。 http://www.perl.com/doc/manual/html/pod/perlfunc/readdir.html 同じような疑問を持たれた方がおられるようなので、載せておきます。 http://www.computing.net/programming/wwwboard/forum/4535.html ここではファイルシステム依存ということになっていましたが、公式サイトには順番についての記述はありませんでした。 したがって、 > どのような順番で情報が格納されるのでしょうか? の答えは「決まっていない」になりますね。 処理系依存ということでしょう。 どんな環境でも同じ結果が欲しいというのであれば、@dir_listに対してsortをかけるしかないと思います。
その他の回答 (1)
- Seiryo
- ベストアンサー率13% (27/203)
そんなんやってみればいいじゃん。 Perlのスクリプティングホストの種類とか バージョンによっても違うんじゃない? こうはなったけども . .. 02jXVhQo.C 06B3babN.6 098hSVk6.Z 0A4jAI0d.h 0ckAL0nN.I 0Gh8YPdf.B 0jhFZM1W.M 0kR3589m.P 0NIVBe1e.M 0Thk4emT.a 1.c 10PHP4kW.W 11cUYISZ.Y 17UlecTe.l 19Fg1eLd.o 1dCkN4RD.f 1fJDifWh.0 1fNkP1Ho.B 1glmH3DV.4 1Gpf0WiM.N 1HhVoZIL.l 1IchCFjl.B 1INVG2b7.T 1iSPnQ6d.c 1K6dCXdb.3 1NgbaMa8.a 1odMNBB8.l 1Oi5XfIW.A 1OJUOpNj.D 1oLgcFbI.6 1P3R4B0I.D 1PoWeV5G.Y 1RlMIlPg.h 1SU9c1ZM.h 1Tb1oPQZ.h 20WKONpJ.e 20ZjmAcM.P 24inWajk.2 2bY5kcYH.M 2ciffQcX.j 2dXRVjom.b 2E5GWSg0.0 2hG5bhnb.R 2HHA3CLj.6 2jO5gZb3.l 2KffUlCG.K 2lKOgnho.e 2lnAcdMT.l 2lWDMoRV.C 2neMJEe5.O 2oPgU0gk.p 2Q01LP0c.9 2ReEXN9l.H 2SA3li6E.P 2Xnc4XFi.6 2YGa37d3.R 303VkQUb.6 36OOkU9b.n 3ec22mT7.i 3FBJpIjW.N 3gX2VfcP.W 3I3HJ2Xa.d 3i95EdO5.T 3k6pcaj7.p 3l7FbnE9.b 3m8iiXfa.R 3MbjZ38S.2 3MLHUfVR.F 3mlXWVDh.l 3naUM0e9.J 3NTpPciD.c
お礼
>そんなんやってみればいいじゃん。 ある環境で試してみると、結果から答えは推測できますが、正しいという確証が得られないですよね。なので仕様を質問しました。 readdir()の仕様として、「opendir でオープンしたディレクトリハンドルから、ディレクトリエントリを読む。」ぐらいしか検索では見つけられず。 一例、ありがとうございました。参考になります。
お礼
素晴らしいアドバイス、ありがとうございます。ご紹介いただいたサイト、見せていただきました。とっても参考になりました! >答えは「決まっていない」になりますね。 >処理系依存ということでしょう。 なるほど、そういうことでしたか…。それでこういったコードの例文を見ると、@dir_listをいったんソートしているものが多いんですね。 ほんとに助かりました。ありがとうございます(^^)!