Back to Top

プログラムの覚書

Category: パス

VB.NET パスの分解・結合をする

ファイルパスの分解や結合をする方法を記載します。

ファイルパスを結合する

ファイルパスの連結をする

Dim sFilePath1 As String = System.IO.Path.Combine("C:\work\", "myfile.txt")
Dim sFilePath2 As String = System.IO.Path.Combine("C:", "work", "myfile.txt")
Dim sFilePath3 As String = System.IO.Path.Combine("C:\", "work", "myfile.txt")

'2と3は結果が異なる		

 

ファイルパスを分解する

ファイルパスからファイル名を取得する

Dim sFileName1 As String = System.IO.Path.GetFileName("C:\work\myfile.txt")
Dim sFileName2 As String = System.IO.Path.GetFileName("C:\work\myfile")
Dim sFileName3 As String = System.IO.Path.GetFileName("C:\work\myfile\")

'2はmyfileをファイルとみなすが3はディレクトリとみなす		

 

拡張子を含まないファイル名を取得する

Dim sBaseFileName1 As String = System.IO.Path.GetFileNameWithoutExtension("C:\work\myfile.txt")
Dim sBaseFileName2 As String = System.IO.Path.GetFileNameWithoutExtension("C:\work\myfile")

 

拡張子を取得する

Dim sExtension1 As String = System.IO.Path.GetExtension("C:\work\myfile.txt")
Dim sExtension2 As String = System.IO.Path.GetExtension("C:\work\myfile")

 

ルートドライブ名を取得する

Dim sRootDrive As String = System.IO.Path.GetPathRoot("C:\work\myfile.txt")

 

ファイル名を除いたディレクトリ名を取得する

Dim sDirectoryName1 As String = System.IO.Path.GetDirectoryName("C:\work\myfile.txt")
Dim sDirectoryName2 As String = System.IO.Path.GetDirectoryName("C:\work\myfile")

 

拡張子を削除したファイルパスを取得する

Dim sBaseFilePath1 As String = System.IO.Path.ChangeExtension("C:\work\myfile.txt", Nothing)
Dim sBaseFilePath2 As String = System.IO.Path.ChangeExtension("C:\work\myfile", Nothing)

 

格納されているディレクトリのみの名前を取得する

Dim FilePath As String = "C:\work\aaa\bbb\ccc\test.txt"

Dim info As New System.IO.FileInfo(FilePath)
Dim str1 As String = info.Directory.Name
Dim str2 As String = info.Directory.Parent.Name

※ C:\work\myfileの場合myfileはファイル名とみなしますが、 C:\work\myfile\はフォルダとみなします。

 

Posted in パス | Leave a reply

VB.NET カレントディレクトリの取得・変更をする

カレントディレクトリ(ユーザが現在作業を行っているディレクトリ)を取得または変更をします。

カレントディレクトリを取得する

Dim sCurrentDir As String = System.IO.Directory.GetCurrentDirectory()
'または
Dim sCurrentDir As String = System.Environment.CurrentDirectory

 

カレントディレクトリを変更する

System.IO.Directory.SetCurrentDirectory("C:\work\")
'または
System.Environment.CurrentDirectory = "C:\work\"

 

Posted in パス | Leave a reply