Dim strFilePath1 As String
Dim strFilePath2 As String
strFilePath1="D:\files\test.txt"
例えばこのような、ファイルのフルパスを示す文字列があるとき、
ファイル名「text.txt」を削除して、ファイルがあるフォルダ
「D:\files\」までの文字列 strFilePath2 を作成したいです。
(パスの深さやドライブは一定ではありません、
C:\Documents and Settings\AAA\デスクトップ\text2.txt
なども含まれます。)
つまり、一番最後の「\」以降を削除したいですが、どうすればよろしいでしょうか。よろしくご教授お願いします。
本当に文字列として扱いたいのなら、
・Mid$()で右から丁寧に調べる
→(VB6)InStrRevを使ってみてもいい
・面倒なので、Scripting.FileSystemObjectのGetParentFolderNameを使う。
….NETはもっといいのあるかもね。
.NETなら
strFilePath2 = System.IO.Directory.GetParent(strFilePath1).FullName
とか。
VB6なら
strFilePath2 = Left(strFilePath1, InStrRev(strFilePath1, "\"))
とか。
皆さんありがとうございました!
VB6ですので、いなさんのアドバイスで希望どおりです。
どうもでした!
ツイート | ![]() |