- ベストアンサー
ファイル保存のパスチェック方法
ファイル保存画面を作っています。保存先はダイアログボックスを使用せずパス付きのファイル名を入力させます。画面に入力されたファイル名(パス付)が例えば"C:\test\aaa.text"の場合"aaa.text"というファイルはまだ存在していないのでDir関数では"C:\test"が実際に存在するかどうかのチェックを行えません。何か良い方法があればお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
No.1です。 後ろから文字を探す、InStrRev関数もあります。 (少なくともVB6では使用出来ます。) 関数にするとこんな感じ Public Function GetOnlyPath(fileName As String) As String Dim z0 As Long z0 = InStrRev(fileName, "\") If z0 <> 0 Then GetOnlyPath = Left(fileName, z0) Else GetOnlyPath = "" End If End Function
その他の回答 (2)
#1さんに補足。 で、その「\」の位置を探すのにはInstr関数が役に立つでしょう。 (これってVB.NET用のものですがVB6にあったっけ?) http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ ja/vblr7/html/vafctinstr.asp (一行につなげてください) #一回Split関数をお勧めしそうになった。危ない危ない。
お礼
回答ありがとうございます。Instrを調べるとInstrRev関数を見つけました。Instr関数が良いヒントになりました。ありがとうございます。
- maruru01
- ベストアンサー率51% (1179/2272)
こんにちは。maruru01です。 パスだけを取り出して、フォルダの存在チェックをすればいいだけでは? パスの取り出しは、後ろから"\"を探して、その位置までを取り出せばいいです。
お礼
回答ありがとうございます。試してみてできました。とても助かりました。
お礼
InstrRev関数には気づいたのですが、そこからMidを使おうとしていました。Leftの方が適してますね。ありがとうございました。