VBレスキュー(花ちゃん)
VB2005用トップページへVBレスキュー(花ちゃん)のトップページVB6.0用のトップページ各掲示板

メニューへ戻ります。 フォルダー関係のメニュー
1.フォルダー(ディレクトリ)の属性を取得及び設定・除去する
2.フォルダー(ディレクトリ)のタイムスタンプを取得及び設定する
3.フォルダーの作成・有無の確認及びコピー・移動・削除・フォルダー名の変更
4.フォルダー(ディレクトリ)に関するパス操作色々
5.システムの特別なフォルダーのフォルダーパスを取得
6.指定フォルダー以下のサブフォルダー数を取得及びフォルダー名を列挙
7.
8.
9.
10.
11.
12.
 .
20.その他、当サイト内に掲載のフォルダーに関するサンプル


4.フォルダー(ディレクトリ)に関するパス操作色々(35_Fld_04) (旧、SampleNo.034)
1.プログラムを起動したフォルダーのパスを取得
2.アプリケーションの現在の作業ディレクトリを取得及び移動
3.プログラムを起動したルートディレクトリを取得
4.フルパス文字列からディレクトリ名を取得する
5.相対パスから絶対パスを取得する
6.2 つのパス文字列を結合する

 下記プログラムコードに関する補足・注意事項 
動作確認:Windows 8.1 (Windows 7) / VB2013 (VB2010) / Framework 4.5.1 / 対象の CPU:x86
Option :[Compare Text] [Explicit On] [Infer On] [Strict On]
Imports :追加なし
参照設定:
追加なし
その他 :
    :
このサンプル等の内容を無断で転載、掲載、配布する事はお断りします。(私の修正・改訂・削除等が及ばなくなるので)
必要ならリンクをはるようにして下さい。(引用の場合は引用元のリンクを明記して下さい)
このページのトップへ移動します。 1.プログラムを起動したフォルダーのパスを取得

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
'プログラムを起動したフォルダーのパスを取得
    'Application.StartupPath プロパティ
    'アプリケーションを開始した実行可能ファイルのファイル名を含まないパスを取得
    Dim path As String
    path = Application.StartupPath()
    Debug.WriteLine(path)               '結果 G:\VB2013\35_Fld_04\bin\Debug
End Sub

このページのトップへ移動します。 2.アプリケーションの現在の作業ディレクトリを取得及び移動

Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
'アプリケーションの現在の作業フォルダーを取得及び移動
    'Directory.SetCurrentDirectory メソッド
    'アプリケーションの現在の作業フォルダーを指定したフォルダーに設定します。
    '確認の為に現在の作業フォルダーを取得
    Debug.WriteLine(System.IO.Directory.GetCurrentDirectory())   '結果 G:\VB2013\35_Fld_04\bin\Debug

    '現在の作業フォルダーを ..\..\..\ に移動します
    System.IO.Directory.SetCurrentDirectory("..\..\..\")

    '確認の為に現在の作業フォルダーを取得
    Debug.WriteLine(System.IO.Directory.GetCurrentDirectory())   '結果 G:\VB2013
    '作業フォルダーを移動しても StartupPath の取得結果は変りません
    Debug.WriteLine(Application.StartupPath())                   '結果 G:\VB2013\35_Fld_04\bin\Debug
End Sub

このページのトップへ移動します。 3.プログラムを起動したルートディレクトリを取得

Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click
'プログラムを起動したルートフォルダーを取得
    'Path.GetPathRoot メソッド
    '指定したパスのルートフォルダー情報を取得します。
    Debug.WriteLine(System.IO.Path.GetPathRoot _
                                (Application.StartupPath()))  '結果 G:\
    'Directory.GetDirectoryRoot メソッド  
    '指定したパスのボリューム情報またはルート情報、あるいはその両方を返します。
    Debug.WriteLine(System.IO.Directory.GetDirectoryRoot _
                                  (Application.StartupPath()))    '結果 G:\
End Sub

このページのトップへ移動します。 4.フルパス文字列からディレクトリ名を取得する

Private Sub Button4_Click(sender As Object, e As EventArgs) Handles Button4.Click
'フルパス文字列からフォルダー名を取得する
    'Path.GetDirectoryName メソッド
    '指定したパス文字列のフォルダー情報を返します。
    '指定したファイルやフォルダーは存在しなくてもよい
    Debug.WriteLine(System.IO.Path.GetDirectoryName _
                        ("C:\Test1\Test2\test.exe")) '結果 C:\Test1\Test2
End Sub

このページのトップへ移動します。 5.相対パスから絶対パスを取得する

Private Sub Button5_Click(sender As Object, e As EventArgs) Handles Button5.Click
'相対パスから絶対パスを取得する
    'Path.GetFullPath メソッド                  
    '指定したパス文字列の絶対パスを返します。
    Debug.WriteLine(System.IO.Path.GetFullPath("..\..\")) '結果 G:\VB2013\35_Fld_04\
    Debug.WriteLine(System.IO.Path.GetFullPath("."))      '結果 G:\VB2013\35_Fld_04\bin\Debug
    Debug.WriteLine(System.IO.Path.GetFullPath(".."))     '結果 G:\VB2013\35_Fld_04\bin
End Sub

このページのトップへ移動します。 6.2 つのパス文字列を結合する

Private Sub Button6_Click(sender As Object, e As EventArgs) Handles Button6.Click
'2 つのパス文字列を結合する
    'Path.Combine メソッド
    '2 つのパス文字列を結合する
    Debug.WriteLine(System.IO.Path.Combine _
                        ("C:\hoge", "Test1.exe"))   '結果 C:\hoge\Test1.exe
    Debug.WriteLine(System.IO.Path.Combine _
                        ("C:\hoge\", "Test1.exe"))  '結果 C:\hoge\Test1.exe
    '※ \ 等のパス区切り文字を自動的に付加する。
End Sub

このページのトップへ移動します。 検索キーワード及びサンプルコードの別名(機能名)





このページのトップへ移動します。