• ベストアンサー

ディレクトリ配下のファイル名を取得するには

質問があります。 あるディレクトリの配下のファイル名を取得するには どのようにしたらよいのでしょうか? またその場合、どういった形式で取得できるのでしょうか? もうひとつファイルをオープンして一行しかない ファイルの場合だけ編集を行い、 上書きするという処理をご存知のかた いましたら、教えてください。

  • 80yen
  • お礼率74% (123/165)

質問者が選んだベストアンサー

  • ベストアンサー
  • osaosa42
  • ベストアンサー率60% (20/33)
回答No.2

1つ目の質問の回答ですが、「Dir関数」を使えばできます。 やり方は、ヘルプに載っているので見てください。 2つ目の質問の回答ですが、 -------------------------------- Dim strFile As String Dim strLine As String '☆☆☆☆1行取り出し☆☆☆☆ 'ファイルを開く Open strFile For Input As #1 'ファイルから1行読み取る Line Input #1, strLine 'ファイルを閉じる Close #1 '☆☆☆☆書き込み☆☆☆☆ strLine="書き込むよ!!" Open strFile For Output As #1 Print #1, strLine Close #1 -------------------------------- ただし、エラー処理は、省略してます。 こんなんでどうでしょう?

80yen
質問者

お礼

ありがとうございました。 Dir関数でできました。 引数を省略すると次のファイル名が 取得できるようです。 あとはOutput,Inputを 使って解決することができました。

その他の回答 (2)

  • arata
  • ベストアンサー率49% (139/279)
回答No.3

最初のファイル名取得ですが、4つほどあります。 1.Dir関数を使用する osaosa42さんが紹介されてますね。最も一般的な方法です。 2.ファイルシステムオブジェクトを使用する VB6からだと思います。 Dirよりも高機能・・・だったと思います。 3.WindowsAPIを使用する FindFirstFile,FindNextFile,FindCloseを使用します。Dir関数では取れない情報をとったり、再帰的にフォルダの内容を取得したりしたい場合に使用したりします。Dirより高速。 4.ファイルリストボックスを利用する ファイルリストボックスをフォームに貼りつけて、VisibleをFalseにしておいて、利用します。 こんなところでしょうか。 用途によって使い分けます。使い方が載っているページを紹介しておきます。 http://www.galliver.co.jp/writing/vbm_tokushu/api9030/ http://www.vbvbvb.com/jp/gtips/0051/gFindFirstFileFindNextFile.html

  • honiyon
  • ベストアンサー率37% (331/872)
回答No.1

こんにちは、honiyonです。  今手元にVBがないので分かりませんが、ヘルプにのっているはずです。(ファイル名の取得)  因みにDelphiでは FindFirst, FindNextを使います。  検索エンジンで、「VB ファイル名 取得」で検索したら色々と参考文献が見つかると思います。(試してません^^;)  一行しかないファイルの検索方法ですが、まずファイルを開くまではOKですよね? その後「一行だけのファイルである」と判断の仕方を提示します。  一行だけのファイル(テキスト形式)であるのは、    1.データ(文字)が書かれているけど改行コードが含まれていない。    2.改行コード以降にデータ(文字)がかかれていない。  のどちらかだと思います。  改行コードは 0x0D 0x0Aです。 (0D,0A,ひょっとしたら逆かも^^;)  曖昧なアドバイスですが、参考になれば幸いです(..

関連するQ&A

  • ttlマクロによるディレクトリ配下の取得

    シェルスクリプトで、apacheのhtmlディレクトリを取得しバックアップを作成しております。 シェルスクリプトは、ユーザshコマンドによる実行です。(cronでは動かしておりません。) 保存先:/home/test/html_backup/配下 保存ファイル名:yyyymmdd.tar.gz(yyyymmddシェルスクリプト実行日となる。) よって、/home/test/html_backup/ディレクトリ配下にある複数のバックアップ全てを、 マクロによるscp転送で取得したいと考えています。 同名ファイルが存在する場合は、常に上書きでかまいません。 サーバに接続後、下記コマンドを実行しようと思いました。 wait '$' scprecv '/home/test/html_backup/*' scprecv '*' 'c:\temp' としましたが、うまくマクロが動きません。 sendlnでファイル転送ができることはわかりましたか、 今回やろうとしていることは、複数のバックアップファイルがあるため 自動でsendlnでは難しいと思っております。 どのようにttlを書けば バックアップファイルを全部取得できるのでしょうか。 ご教授お願いいたします。

  • ディレクトリ以下のファイル名を取得する

    ディレクトリ名を指定するだけで、 そのディレクトリ内にある全てのデータファイルを 読み込んで処理するプログラムをC++で作ろうと考えています。 その為に、ディレクトリ以下のファイルのファイル名を 取得する方法(命令)を教えて頂きたく思います。 よろしくお願いします。

  • ディレクトリ名を取得したい

    perlでディレクトリ名だけを取得したいのですが、 なかなかうまい方法が見つかりません。 ファイル名を取得する・・・というのは結構あるのですが、 ディレクトリ名だけ、というのがどうもわかりません。 ちなみにファイル名取得は以下のようにやっています。 my $md; opendir(DIR, 'q'); while (defined($dir = readdir(DIR))) { $md=substr($dir,0,6); } closedir(DIR); ディレクトリ名だけを取得・・・というのはどうやればよいのでしょうか。

    • ベストアンサー
    • Perl
  • delphi5でのディレクトリ内ファイル名の取得

    こんにちは。質問があります。 delphiのアプリケーションであるディレクトリのフォルダ内のファイルを 別のディレクトリのフォルダ内に名前を変えてコピーしようと考えています。 基本的にコピー元のディレクトリ名はわかりません。 コピー先のディレクトリは存在しなければ、名前を指定して作成し、その中に名前を変更したファイルを格納する流れです (わかりづらいかも・・・) フォルダが存在しなければ作成したり、ファイル名を変更してコピーする のはわかったのですが、コピー元のディレクトリ内のファイル(もしくはディレクトリ)名を取得することがわかりません。 全てソースの中でプログラムしたいと考えています。(VCLは使用しない) こんなんでもわかっちゃったりする方がいらっしゃいましたら、 どうか愛の手を・・・

  • フォルダ配下にあるファイル名を取得する方法

    度々すいません。 また別件で困ってしまい質問をあげさせて頂きます。 環境は以下の通りになります。  ・WindowsXP  ・VC++.NET(2002版) フォルダ配下に存在するファイルのファイル名を取得したいのですが なにか良い関数・やり方はあるのでしょうか? お手数ですがご教授願います。 宜しくお願い致します。

  • ディレクトリ内のファイル名の取得

    ディレクトリを読んでディレクトリに有る画像ファイル $dname = dir ( "./cgi-bin/image/" ); while ( false !== ( $imagefile = $dname->read() )) { } 拡張子を除いたファイル名を取得したい abc.jpg dfg.jpg xyz.jpg abc dfg xyz 宜しくお願いします。

    • ベストアンサー
    • PHP
  • VB.NET 最下位のディレクトリ名を取得する方法

    こんにちは ディレクトリのパス 「D:\ディレクトリ1\ディレクトリ2\テキストファイル.txt」から ファイル名「テキストファイル.txt」が存在する、最下位のディレクトリ名「ディレクトリ2」 を取得したいのですが、このような機能を提供する関数をご存知の方がいらっしゃいま したらお教え願います。

  • ファイル名に『?』が入ってるファイルを開くには?

    ファイル名に半角の『?』が入ってるファイルには アクセスできないでしょうか? opendir(DIR, "./dir"); @list = grep(!/^\./, readdir(DIR)); close(DIR); ディレクトリにあるファイルのリストを取得して、 そのリストに基づいて処理をしたいのですが… ファイル名に『?』が入ってるファイルは、 open(); rename(); ファイル演算子等の処理できません。 これをなんとかする方法はあるのでしょうか?

    • ベストアンサー
    • Perl
  • PHPで、該当ファイルの一つ上のディレクトリ名を取得したいのですが、そ

    PHPで、該当ファイルの一つ上のディレクトリ名を取得したいのですが、そのような関数はございますでしょうか? 例えば、該当のページが 「http://example.com/abc/top.php」 だった場合、 「abc」を文字列として取得したいです。 自分のファイル名を取得する時はbasenameという関数を使う所までは 分かったのですが、一つ上のディレクトリ名を取得する関数を探す事が 出来ませんでした。ご教授頂けると大変助かります。 宜しくお願い致します。

    • ベストアンサー
    • PHP
  • 上位ディレクトリ名(フォルダ名)を取得するには?

    phpファイルが入っている、2階層上位のディレクトリ名(フォルダ名)を取得したいと思っています。 例 http://~.com/aaa/bbb/ccc/test.php test.phpが本体です。 ここから2階層上位のディレクトリ名、ここでは「bbb」を取得するような事はできないでしょうか? test.phpの中に、2階層上位のディレクトリ名を記述したいと思っています。 具体的に言うと、 $name = "●●●"; 上記の●●●に、2階層上位のディレクトリ名を入れたいです。 同じようなファイルが多数あり、「bbb」には様々なフォルダ名があり、test.phpの1つ1つを書き換えるのに手間がかかるので、ディレクトリ名を自動的に取得できれば助かります。 phpの知識がほとんどないため、お力をお借りできればと思い、質問させて頂きました。 アドバイスをお願い致します。

    • ベストアンサー
    • PHP