テキストファイルの一括処理について相談です。大量のテキストファイルがあります。一括で、ファイル名を本文の一行目に挿入したいです。どういった方法が考えられますか?


※自分で調べたところソフトが無さそうなので、vbaやvbsでやるのかなとも思っています。その場合、サンプルプログラムを教えて頂けると嬉しいです。

回答の条件
  • 1人5回まで
  • 13歳以上
  • 登録:2013/07/25 17:47:56
  • 終了:2013/08/01 17:50:04

回答(1件)

id:ku__ra__ge No.1

ku__ra__ge回答回数118ベストアンサー獲得回数402013/07/25 22:38:39

ポイント100pt

以下の内容を"addTitle.vbs"という名前で保存して、目的のファイルがあるフォルダでダブルクリックすると、同じフォルダにある各ファイルについてファイル名を本文の一行目に挿入します。
ShiftJISテキスト以外のファイルを処理すると、ファイルが破壊されますので予めバックアップを取るなどして使用することをお勧めします。

If MsgBox("ready?", vbYesNo) = vbNo Then
	WScript.Quit()
End If

Const FILE_WRITE = 2

Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(".")

For Each file In folder.Files
	If file.Name <> "addTitle.vbs" Then
		Set ts = fso.OpenTextFile(file.Name)
		text = ts.ReadAll()
		ts.Close
		
		Set ts = fso.OpenTextFile(file.Name, FILE_WRITE)
		ts.WriteLine(file.Name)
		ts.Write(text)
		ts.Close
	End If
Next

WScript.Echo("end")

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません