• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:VBScript で未作成ファイルの親フォルダを調べたい)

VBScriptで未作成ファイルの親フォルダの取得方法

このQ&Aのポイント
  • VBScriptのファイルシステムオブジェクトのCopyFile()を使ってファイルをコピーする際に、親フォルダの有無を確認する方法を紹介します。
  • 正規表現を使用してファイルのパスから親フォルダを取得する方法についても説明します。
  • VBScriptを使用して未作成ファイルの親フォルダを調べる方法を解説します。正規表現を使わずに親フォルダのパスを取得する方法も紹介します。

質問者が選んだベストアンサー

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.1

こんにちは。 File System Object の GetParentFolderNameメソッド ですね。 書式:FileSystemObject.GetParentFolderName(path) 指定するパスは実在しなくてもかまいません。 Dim FSO Set FSO = CreateObject("Scripting.FileSystemObject") MsgBox FSO.GetParentFolderName("C:\rootdir\lv2dir\lv3dir\newfile.txt")

KanjiTalk
質問者

お礼

ありがとうございます。この前GetParentFolderName()でやってみたところうまく行かなかったのですが、コピペさせて頂いたところうまくいきました!スペルミスだったのかな??

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • クラスパス配下のファイル名一覧取得

    ある、クラスパスの通ったフォルダ(仮にdir)があったとして そのフォルダ内にあるファイル名一覧を取得したいと考えております。 dir/ ->a.txt ->b.txt ->c.txt 結果:a.txt、b.txt、c.txt ClassLoader クラスなどを用いて取得しようと考えたのですが、 getSystemResource() メソッドなどはファイル名まで指定しないと 取得できないみたいで、現時点で望む処理ができない状態です。 フォルダまでの絶対パスの指定はしたくないため、 Fileクラスも使用できない状態です。 このような処理をやったことがある方は、 どうかご教授お願いいたします。

  • PHPで、フォルダーにあるファイルを配列に取り込みたい

    例えば次の様なフォルダーとファイルがあるとき \abc\a.txt \abc\b.doc \abc\def\b.doc \abc\ghi\a.txt \abc\ghi\b.doc 次の様な結果を得たいのですが、どうすれば良いでしょうか? $dir[/abc/a.txt] = "/abc/a.txt" $dir[/abc/b.doc] = "/abc/b.doc" $dir[/abc/def/b.doc] = "/abc/def/b.doc" $dir[/abc/ghi/a.txt] = "/abc/ghi/a.txt" $dir[/abc/ghi/b.doc] = "/abc/ghi/b.doc" 再帰関数でできそうに思うのですが、いくら考えても分かりません。 $path = "\abc"; function getfiles($path) {} print_r(getfiles($path)); みたいにして取り出せると助かります。 すみませんが教えてください。

    • ベストアンサー
    • PHP
  • 正規表現で絶対パス表示のファイル名からファイル名だけを削除したい

    Perlの正規表現を使って c:\xxxx\xxxx\xxxx\xxxx\abc.txt のようにファイルの絶対パスで記述されている文を c:\xxxx\xxxx\xxxx\xxxx のように ファイル名部分だけを削除して、 フォルダの絶対パスに 表示させる正規表現を教えていただけないでしょうか? ちなみにxxxxは可変値、階層の深さも決まっておらず、 ファイルの拡張子もtxt,htm,拡張子なしなどです。 よろしくお願いいたします。

    • ベストアンサー
    • Perl
  • 一つのテキストファイルと複数のファイルの結合

    よろしくお願いします.ディレクトリ内の一つのテキストファイル(joint.txt)と複数のファイルの結合を行ごとに隣へ結合するプログラムを作成しています.ここで以下のプログラムを作成したのですが,うまくいかないため,誤っている部分をご指摘願えないでしょうか. my $dirname = '.'; opendir(DIR, $dirname) or die "$dirname: $!"; while (my $dir = readdir(DIR)) { next unless (-f $dir); next unless ($dir =~ /\.txt$/); open(FILE, $dir) or die "$dir: $!"; open(FILE2,"joint.txt"); my @file = <FILE>; my @file2 = <FILE2>; close(FILE); close(FILE2); foreach my $line (@file) { foreach my $line2 (@file2) { chomp $line2; $line = "$line2.",".$line"; } } open(NEWFILE, "> $dir") or die "$dir: $!"; print NEWFILE @file; print NEWFILE @file2; close(NEWFILE); } closedir(DIR);

    • ベストアンサー
    • Perl
  • バッチファイルの親フォルダを取得するには

    WindowsのDOSコマンドを用いたバッチファイルで、バッチファイルと同じフォルダにある実行ファイルを起動したいのですが、どのようにするのがよいのでしょうか? 実行ファイルのファイル名は既知で固定なので、バッチファイルの親フォルダが取得できれば、連結して起動すればよいです。 しかし、バッチファイルの親フォルダの取得方法が分かりません。 カレントフォルダは%CD%で取得できるのですが、バッチファイルの親フォルダがカレントフォルダとは限りません。 バッチファイルのフルパスは%0で取得できるのですが、そこからフォルダ部のみを抽出する方法が分かりません。 よろしくお願いします。

  • サブフォルダの親フォルダを変えたい

    フォルダの中のサブフォルダを取得してくて、 http://officetanaka.net/excel/vba/tips/tips95.htm の --------------------------------------------------------- Sub Sample4() Dim buf As String, msg As String buf = Dir("*.*", vbDirectory) Do While buf <> "" If InStr(buf, ".") = 0 Then msg = msg & buf & vbCrLf buf = Dir() Loop MsgBox msg End Sub --------------------------------------------------------- をやってみたら、サブフォルダを取得できたのですが、 上記のコードを実行すると 元々のフォルダのパスが「C:\Users」で、 「C:\Users」のサブフォルダが取得されてしまいます。 でも上記のコードでは、「C:\Users」は指定してないと思うのですが、 なぜ「C:\Users」のサブフォルダが取得されてしまうのでしょうか? 例えば 「C:\Users」ではなく、「C:\Program Files」のサブフォルダを取得するには、 どのようにコードを書き換えればいいのでしょうか? ご教授よろしくお願いします。

  • 正規表現でファイル名の抽出

    社内の掲示板に属するWebアプリケーションを制作しております。 複数のファイルをアップロードするために、<input type="file" ...> で得たファイルのパスを一時的にリストに表示させる仕様になりました。 そこで、javascriptの正規表現オブジェクトで次のようなフルパスから ファイル名のみを抽出することを考えました。  a: c:\hoge.txt  b: \\foo_server\foo_dir\hoge2.txt a,bから、それぞれ hoge.txt hoge2.txt を得るために、/[^\\].*/によって \\を取り除いた後で/\\.*\..*$/ によって欲しい文字列が得られると考えましたら文字列どころか何も 得られませんでした。 /[^\\].*/までは動いているようです。 オブジェクトの使い方が誤っていると考えているのですが、どの様に 扱えばよいのか皆目見当がつかなくなりました。 大変お手数ですが、ご教示願います。

  • ディレクトリ内のテキストファイルに対する同一処理

    よろしくお願いします。現在Linuxの環境でテキスト処理をしております。 ディレクトリ内にファイル名の異なった以下のような大量ファイルがあります。 a.txt 0,1,2,3,4,5,6,7 1,2,3,4,5,6,7,8 b.txt 2,3,4,5,6,7,8,9 3,4,5,6,7,8,9,10 これらのファイルをカンマでsplitし、左から2番目の数にだけ1を引き,下のディレクトリであるoutに出力させます。出力は以下のようになります。 ./out/a.txt 0,0,2,3,4,5,6,7 1,2,3,4,5,6,7,8 ./out/b.txt 2,2,4,5,6,7,8,9 3,4,5,6,7,8,9,10 そこで以下のようなPerlのプログラムを作成しました。 use strict; use warnings; my $dirname = '.'; opendir(DIR, $dirname) or die "$dirname: $!"; while (my $dir = readdir(DIR)) { next unless (-f $dir); next unless ($dir =~ /\.txt$/); print $dir, "\n"; open(FILE, $dir) or die "$dir: $!"; my @file = <FILE>; foreach $line (@file) { my ($a,$b,$c,$d,$e,$f,$g,$h) = split(/,/, $line);      my $b = $b - 1; close(FILE); } open(NEWFILE, "> ./out/$dir") or die "$dir: $!"; print NEWFILE @file; close(NEWFILE); } closedir(DIR); ですが、出力は完了するのですが、元のファイルから計算がされていません。どこがどう間違えているのかご指摘よろしくお願い申し上げます。

    • ベストアンサー
    • Perl
  • VBSでファイル名と同じフォルダを作成し、移動させる。

    はじめまして。こんにちは。ファイル名の取得、フォルダの作成、移動ができなくて困っています。 たとえばC:\testというフォルダの中にaaa1.txt aaa2.txt,aaa3,txt・・・zzz343.txtというようにファイルがランダムにあったとします。最初の3文字は英語と決まっています。そこでaaa1.txtやaaa2.txtがあればaaaというフォルダを同じ階層に作成し、aaa1.txtとaaa2.txtを新しく作成したaaaというフォルダに移動させる。これをすべてのファイルにたいして行いたいのですがどうすればいいのでしょうか? 参考になるURLやサンプルプログラムがありましたら教えて下さい。よろしくお願い致します。

  • バッチファイルでパスとファイル名を併記した一覧を書き出したい

    バッチファイルでパスとファイル名を併記した一覧を書き出したい いつもお世話になってます。また相談させていただきたいです。 下のようにバッチファイルでカレントフォルダ内のパスとファイル名を併記し、ファイル名一覧を書き出したいのですが、 c:\test\123.txt c:\test\abc.txt ・ ・ c:\test\いろは.txt 欲をいえば下の様に、 "c:\test\123.txt" "c:\test\abc.txt" ・ ・ "c:\test\いろは.txt" 『dir /b /w *.*> fname_ichiran.txt』 ↑ ↑ ↑ をどのように変更すれば良いのでしょうか? 今回もどなた様かお知恵を貸して下さい。よろしくおねがいします。