• ベストアンサー

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

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

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

  • ベストアンサー
回答No.1

プログラムを組むほどのこともなさそうです。 ・Windows copy *.txt matome.txt ・Unix系 cat *.txt > matome.txt プログラムを組む場合は、単純なテキストコピーのプログラムの応用です。 但し、ファイル名を特定のディレクトリから抽出するような場合、 環境依存のファイル検索(ディレクトリ読み込み)関数を使えばよいでしょう。

dozer
質問者

お礼

試してみましたところ、無事まとめる事ができました。copyにこの様な使い方があったのですね。 ありがとうございました。

その他の回答 (1)

  • ICHI-yan
  • ベストアンサー率33% (45/134)
回答No.2

windowsでのみ有効です。 copy *.txt matome.txt この1行が、内容のテキストファイルを拡張子をbatにして同一フォルダ内に作成する。 それを、ダブルクリックすれば、黒い窓が出てきて、処理してくれます。 copy a.txt + b.txt + c.txt matome.txt でも同じことです。 copy a.txt + b.txt + c.txt matome1.txt copy d.txt + e.txt + f.txt matome2.txt など、複数行でもかまいません。順番を変えたいとかに使えます。拡張子は必ずbatにし必ず処理するフォルダと同一フォルダに作成して下さい。 何をしているか興味があれば、ms-dosを調べてみてください。一番最初の*はワイルドカードといいます。?もワイルドカードです。ファイルが多ければ大変便利です。

dozer
質問者

お礼

ご解答ありがとうございます。 プログラムを書かなくてもcopyと*により実行可能だったのですね。 .batも便利なのでこれからも使っていこうと思います。

関連するQ&A