どうも!リョクちゃです。
今回は、指定のフォルダがあるかどうか判定し、
なければ新たにフォルダを作る方法を例を交えて紹介していきます。
ちなみに前回はこちら
目次
準備編:フォームの作成
最初に準備として、下のようなフォームを作成します。
ちなみに筆者の環境は、
- VisualStudio2019
- Windows 10 64bit
- .Net Framework 4.5.2
です。
フォルダがあるかどうか確認する
今回は、ボタンを押したら、作成したいフォルダ欄に入力されているフォルダが
あるかどうか判定し、なければ作成するプログラムを作ります。
まず、配置したボタンをダブルクリックしてコードエディタ画面に移りましょう。
移ったら、コードを書いていきます。
指定のフォルダがあるかどうかを確認するには、
を使います。
コードは下のようになります。
1 2 3 4 5 6 7 |
Public Class makeDirectory Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click If System.IO.Directory.Exists("./" + Me.TextBox1.Text) Then End If End Sub End Class |
今回は、アプリケーションファイルが生成されるDebugフォルダ直下に
指定のフォルダがあるかどうかを確認しています。
それを表記するために、”./”をMe.TextBox1.Textの先頭に付加しています。
このフォルダの宛先を指定する“./”の表記を相対パスといいます。
一方で逆を絶対パスといい、絶対パスの場合はフォルダの宛先を、
正式に記述する必要があります。
例)
※相対パスの場合、現在作業しているフォルダを起点に考えます。
今回はDebugフォルダを起点に考えるので、”./”が1つになります。
指定のフォルダがなければ作成するコードを書いていく
それでは、指定のフォルダがない場合には、
このフォルダを作っていくコードを記述していきます。
この場合、
を使います。
コードは下のようになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
Public Class makeDirectory Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click ' 指定したフォルダがあるかどうか確認する If System.IO.Directory.Exists("./" + Me.TextBox1.Text) Then ' 指定したフォルダがある場合 Else ' 指定したフォルダがない場合 ' 指定したフォルダ名を作成する System.IO.Directory.CreateDirectory("./" + Me.TextBox1.Text) End If End Sub End Class |
フォルダがある場合はメッセージボックスを表示
このままだとフォルダがある場合は何の通知もないので、
ボタンを押したときにどうなったのかわかりません。
そこで、メッセージボックスを使って通知をしてあげます。
コードは下のようになります。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
Public Class makeDirectory Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click ' 指定したフォルダがあるかどうか確認する If System.IO.Directory.Exists("./" + Me.TextBox1.Text) Then ' 指定したフォルダがある場合 ' メッセージボックスで通知 ' 第1引数にメッセージ内容 ' 第2引数にメッセージボックスウィンドウのタイトル ' 第3引数にメッセージボックスウィンドウに表示するボタン ' 第4引数にメッセージボックスウィンドウに表示するアイコン MessageBox.Show("指定したフォルダは既に存在します", "フォルダ検出", MessageBoxButtons.OK, MessageBoxIcon.Information) Else ' 指定したフォルダがない場合 ' 指定したフォルダ名を作成する System.IO.Directory.CreateDirectory("./" + Me.TextBox1.Text) End If End Sub End Class |
実行編
それではプログラムを実行します。
まず、実行したら作成したいフォルダ欄にフォルダ名を入力します。
下図参照ください。
作成したいフォルダ欄にSaveと入力しました。
入力が完了したらボタンを押してみてください。
フォルダが作成されていなければ、特に通知はないので何の反応もありません。
では、この状態でもう一度ボタンを押してみてください。
すると、下のような画面が表示されます。
既に作成されているのでメッセージボックスが表示されます。
これでフォルダが作成されたことが確認できます。
まとめ
フォルダがあるかどうか確認するには
新たにフォルダを作成するには
ご覧いただきありがとうございます。
・こちらの書籍を参考にVB.Net勉強しています。