• 締切済み

VBSでフォルダ内のテキストファイルを全て連結するには?

SHIMAPEEの回答

  • SHIMAPEE
  • ベストアンサー率75% (154/203)
回答No.4

ANo.3お礼への回答です。 >サンプルに書いてもらったものだと >出力が2回繰り返されてしまうのは何ででしょうか? ANo.2、ANo.3のコードでは入力フォルダと同じフォルダにtxtファイルを出力すると、それも連結してしまいます。そのため2回繰り返されたりすることがあります。これを解決するには、別のフォルダに出力するか、出力ファイルを連結から除外するようにすればよいでしょう。 さて、どうしますか?  : (しばらく考察)  : どうしても同じフォルダに出力したい場合、出力ファイルを連結から除外する簡単な方法は、ANo.3のコードのIfに条件を追加することでしょう。例えば、 If (LCase(fso.GetExtensionName(fn))="txt")And(fn.Name<>"sum.txt") Then これは美しくないですね…。出力ファイルを作る前にFilesコレクションからファイル名を配列などに取り出し、必要ならANo.2で触れた並べ替えを行ってから連結すると美しいと思います。

関連するQ&A

  • フォルダに含まれるテキストファイルを全部連結したい

    複数ファイルを指定して連結するソフトはたくさんあるのですが、フォルダを指定して、その中に含まれる全ファイルを連結するという機能のソフトがなかなか見つかりません。 ちなみに、そのフォルダにサブフォルダがあれば、サブフォルダ中のファイルも一気に連結してしまうことができればなおいいです。

  • perl テキストの連結

    細かくテキストに分けて保存しておいた文章ですが、一つのテキストに連結したいのです。 数が500ほどあるので手動では無理です… 例です 1.txt 2.txt 3.txt を 1、txt  (まとめて) 中身の順番は 1.txt 2.txt 3.txt のような感じにしたいです。 おねがいします。

    • 締切済み
    • Mac
  • テキストファイル連結のDOSコマンドについて

    テキストファイル連結のDOSコマンドについて あるフォルダに下記の様なテキストファイル群があります a.txt、b.txt、c.txt、d.txt・・・・ これらをすべて連結するには copy *.txt all.txt とすればいいのですが、一つ一つのファイルの区切りに目に「■■■■■■■■■■■■■■■」のような区切り文字を入れたいのですが何らかの方法はありますでしょうか?

  • VBSでファイル名と同じフォルダを作成し、移動させる。

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

  • PHPで複数のテキストファイルを読み込みたい

    PHPを勉強中です。 どうしても自力で解決できないので助けてください。 やりたい事は、 「複数ファイルの内容を読み込み、  それらのデータをcsvのセルに入れたい。」のです。 Aというフォルダに、複数のテキストファイルがあります。 これら各ファイルの内容をそれぞれ取得して 「○○.csv」のB列に上から順々に書き込んでいきたいのです。 Aフォルダに入っているテキストファイルは連番を想定しています。 A/ 0001.txt 0002.txt 0003.txt : フォルダに入っているテキストファイルの数はいろいろです。 3枚のフォルダもあれば100枚のフォルダもあります。 これらのファイルの内容を、それぞれ取得して 用意されているcsvファイルの特定のセルに テキストファイルの数だけ順番に入れていきたいのです。 ○○.csv A列  |  B列  |  C列  | △  |0001.txt内容|  △  | △  |0002.txt内容|  △  | △  |0003.txt内容|  △  | : : プログラムのヒントを教えていただければ嬉しいです。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • VBSで指定したフォルダー内のファイルを書き出さないようにする

    あるフォルダ以下のファイル名を出力ファイル、f.name.txtに書き出すのですが "新しいフォルダ"というフォルダのなかにあるファイルは書き出さないようにしたいのですが、意に反してフォルダー内の全てのファイル名を書き出してしまいます。どこがおかしいのでしょう? ********************************************** Set FSO = CreateObject("Scripting.FileSystemObject") Set fl = WScript.CreateObject("Scripting.FileSystemObject") Set abc = fl.CreateTextFile("f.name.txt") ShowSubfolders FSO.GetFolder(".") Sub ShowSubFolders(Folder) For Each File in Folder.Files 'Folder内のファイルを列挙する Fname = File.name FolderCheck=Folder & "\" & "新しいフォルダ" If Folder <> FolderCheck Then abc.Write Folder & "\" & Fname & vbCrLf End If Next For Each Subfolder in Folder.SubFolders 'Foler内のフォルダを列挙する ShowSubFolders Subfolder '再帰呼び出し Next End Sub abc.Close

  • 右クリックでテキストファイルを連結したいのですが

    エクスプローラーのファイル一覧で、ファイルをCTRLキーを使って 複数指定して、右クリックメニューに連結というのを追加して テキストファイルをつなげるプログラム作りたいと思っているのですが、 右クリックで選択した順序というのはプログラム側で取得できるものでしょうか?

  • フォルダ内にあるファイル名を取得したい

    cを利用して、指定したフォルダの中にある全てのファイルの名前を取得するプログラムを作りたいのですが、適した関数がわかりません。 指定するフォルダはあらかじめ決めうちで、その中には.txtのファイルのみを格納します。 どなたか教えてください。できれば自分で作りたいのでヒントをください。お願いします。 VisualC++.netを使っています。OSはXPです。

  • VBSでフォルダ内の最新のファイルを開く方法

    よろしくおねがいします。 あるフォルダ(固定)の中にある、.hogeというファイルのうち、最新のファイルを既定のプログラムで開きたいと考えています。 このフォルダには、.hoge 以外のファイルも混在しています。 既定のプログラムで開くには、 Dim WSH As Object Set WSH = CreateObject("WScript.Shell") WSH.Run """C:\開きたいフォルダ\最新のファイル.hoge""" このように書くことで動作確認できました。 1) フォルダ内で .hoge を列挙して 2) その中で一番更新日時が新しいファイルの名前を取得 この2点ができれば完成なのですが、どうすればよいかわかりません。 具体的な書き方を教えていただけますでしょうか。

  • 複数のテキストファイルを1つにまとめる

    同一フォルダ内にある複数のテキストファイルの内容を1つにまとめる方法を探しております。 例えば、 a.txt, b.txt, c.txt が同一フォルダにあり、 それぞれの内容が AAA BBB CCC である時に、これらをまとめて matome.txtとして、その内容が AAA BBB CCC となるようなプログラムを書きたいのですが、どの様な方法が考えられますでしょうか。 上の例では3つのテキストファイルですが、実際に処理したいファイルは数百個になる為、一つ一つファイル名を入力する作業が大変で困っております。 同一フォルダ内のファイルをファイル名順に一度に読み込み、まとめる方法がありましたらお教え下さい。