質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

Q&A

解決済

2回答

1103閲覧

VB GetFiles

Taichijava

総合スコア12

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

0グッド

0クリップ

投稿2019/03/18 14:38

編集2019/03/18 14:41

1.現在のディレクトリを取得し、それをTextBox1に表示。
2.さらにButton2をクリックでListBox1に現在ディレクトリのファイルをすべて表示。

1についてはうまくいっているようなのですが、2についてがうまくいきません。下記画像のエラーになってしまいます。宜しくお願い致します。

Public

1 Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load 2 Dim dname As String = System.IO.Directory.GetCurrentDirectory() 3 TextBox1.Text = dname 4 End Sub 5 6 Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click 7 System.IO.Directory.GetFiles("TextBox1.Text") 8 Dim files() As String = System.IO.Directory.GetFiles("dname") 9 ListBox1.Items.AddRange(files) 10 End Sub 11End Class 12 13コード

イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

TextBox1の値を使ってGetFilesしたいならこうでしょうか。

VB.NET

1 System.IO.Directory.GetFiles("TextBox1.Text") 2 Dim files() As String = System.IO.Directory.GetFiles("dname") 34 Dim files() As String = System.IO.Directory.GetFiles(TextBox1.Text)

※環境がないので動作未確認。

投稿2019/03/18 14:49

ttyp03

総合スコア16998

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Taichijava

2019/03/18 14:58 編集

ご回答ありがとうございます。試してみましたがうまくいきませんでした。
ttyp03

2019/03/18 14:58

どううまくいかないのでしょうか?
Taichijava

2019/03/18 15:10

再度確認したところうまくいきました。 Dim files() As String = System.IO.Directory.GetFiles("dname") ↓ Dim files() As String = System.IO.Directory.GetFiles(TextBox1.Text) とttyp03様のご回答を誤解していました。申し訳ありません。大変助かりました。ありがとうございました。 もしよろしければなぜ最初のコードがだめだったか教えていただけますか?
ttyp03

2019/03/18 15:13

>なぜだめだったか "dname"は単なる文字列です。 "dname"というディレクトリからファイル一覧を取得することになります。
Taichijava

2019/03/18 15:20

なるほど、dnameはLoadプロシージャでのみ有効で、TextBox1.Textはこのクラス内であればどこでも有効と理解しました。ありがとうございました。
ttyp03

2019/03/18 15:22

まあそうですけど、そもそも"dname"と書いている時点でこれは変数ではないですよ。 もう少し基礎をやってから作り始めたほうがいいかもしれないですね。
guest

0

試してないですが囲いがいらない気がします

VB.net

1System.IO.Directory.GetFiles("TextBox1.Text")

VB.net

1System.IO.Directory.GetFiles(TextBox1.Text)

投稿2019/03/18 14:46

crowmt

総合スコア402

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Taichijava

2019/03/18 14:53

ご回答ありがとうございます。試してみましたがうまくいきませんでした。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問