プロが教える店舗&オフィスのセキュリティ対策術

質問があります。
あるディレクトリの配下のファイル名を取得するには
どのようにしたらよいのでしょうか?
またその場合、どういった形式で取得できるのでしょうか?

もうひとつファイルをオープンして一行しかない
ファイルの場合だけ編集を行い、
上書きするという処理をご存知のかた
いましたら、教えてください。

A 回答 (3件)

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

--------------------------------
ただし、エラー処理は、省略してます。
こんなんでどうでしょう?
    • good
    • 0
この回答へのお礼

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

お礼日時:2001/06/08 10:17

最初のファイル名取得ですが、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/ap …
http://www.vbvbvb.com/jp/gtips/0051/gFindFirstFi …
    • good
    • 0

こんにちは、honiyonです。


 今手元にVBがないので分かりませんが、ヘルプにのっているはずです。(ファイル名の取得)
 因みにDelphiでは FindFirst, FindNextを使います。
 検索エンジンで、「VB ファイル名 取得」で検索したら色々と参考文献が見つかると思います。(試してません^^;)

 一行しかないファイルの検索方法ですが、まずファイルを開くまではOKですよね? その後「一行だけのファイルである」と判断の仕方を提示します。
 一行だけのファイル(テキスト形式)であるのは、

   1.データ(文字)が書かれているけど改行コードが含まれていない。
   2.改行コード以降にデータ(文字)がかかれていない。

 のどちらかだと思います。
 改行コードは 0x0D 0x0Aです。 (0D,0A,ひょっとしたら逆かも^^;)

 曖昧なアドバイスですが、参考になれば幸いです(..
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!