「FileSystemObject ファイルの編集出力」の版間の差分
ナビゲーションに移動
検索に移動
(ページの作成:「==FileSystemObject ファイルの編集出力== ===ファイルを読み込み、書式編集して出力する=== *FileSystemObject http://msdn.microsoft.com/ja-jp/li…」) |
|||
(同じ利用者による、間の1版が非表示) | |||
1行目: | 1行目: | ||
− | ==FileSystemObject ファイルの編集出力== | + | ==[[FileSystemObject ファイルの編集出力]]== |
===ファイルを読み込み、書式編集して出力する=== | ===ファイルを読み込み、書式編集して出力する=== | ||
− | *FileSystemObject http://msdn.microsoft.com/ja-jp/library/cc409798.aspx | + | *[[FileSystemObject]] http://msdn.microsoft.com/ja-jp/library/cc409798.aspx |
− | *VBScript 関数 http://msdn.microsoft.com/ja-jp/library/cc392480.aspx | + | *[[VBScript]] 関数 http://msdn.microsoft.com/ja-jp/library/cc392480.aspx |
Sub ColumnFormat() | Sub ColumnFormat() | ||
− | IF WScript.Arguments.Count | + | IF [[WScript]].Arguments.Count < 1 THEN |
− | Call WScript.Echo("対象ファイルをドロップしてください") | + | Call [[WScript]].Echo("対象ファイルをドロップしてください") |
Exit Sub | Exit Sub | ||
END IF | END IF | ||
− | Set fso = CreateObject("Scripting.FileSystemObject") | + | Set fso = CreateObject("Scripting.[[FileSystemObject]]") |
− | srcFile = WScript.Arguments(0) | + | srcFile = [[WScript]].Arguments(0) |
IF Not fso.FileExists(srcFile) Then | IF Not fso.FileExists(srcFile) Then | ||
− | Call WScript.Echo("対象ファイルが存在しません。") | + | Call [[WScript]].Echo("対象ファイルが存在しません。") |
Exit Sub | Exit Sub | ||
End If | End If | ||
dstFile = srcFile & ".formatted.txt" | dstFile = srcFile & ".formatted.txt" | ||
− | Set inf = fso.OpenTextFile(srcFile, 1) '1: | + | Set inf = fso.OpenTextFile(srcFile, 1) '1:For[[R]]eading |
Set outf = fso.OpenTextFile(dstFile, 2, True) '2:ForWriting | Set outf = fso.OpenTextFile(dstFile, 2, True) '2:ForWriting | ||
output_count = 0 | output_count = 0 | ||
Do While Not inf.AtEndOfLine | Do While Not inf.AtEndOfLine | ||
− | line = inf. | + | line = inf.[[R]]eadLine() |
'TABで区切られているデータを分割 | 'TABで区切られているデータを分割 | ||
39行目: | 39行目: | ||
Loop | Loop | ||
− | Call WScript.Echo(output_count & "件処理しました。") | + | Call [[WScript]].Echo(output_count & "件処理しました。") |
End Sub | End Sub | ||
Call ColumnFormat() | Call ColumnFormat() |
2020年2月16日 (日) 04:25時点における最新版
FileSystemObject ファイルの編集出力
ファイルを読み込み、書式編集して出力する
- FileSystemObject http://msdn.microsoft.com/ja-jp/library/cc409798.aspx
- VBScript 関数 http://msdn.microsoft.com/ja-jp/library/cc392480.aspx
Sub ColumnFormat() IF WScript.Arguments.Count < 1 THEN Call WScript.Echo("対象ファイルをドロップしてください") Exit Sub END IF Set fso = CreateObject("Scripting.FileSystemObject") srcFile = WScript.Arguments(0) IF Not fso.FileExists(srcFile) Then Call WScript.Echo("対象ファイルが存在しません。") Exit Sub End If dstFile = srcFile & ".formatted.txt" Set inf = fso.OpenTextFile(srcFile, 1) '1:ForReading Set outf = fso.OpenTextFile(dstFile, 2, True) '2:ForWriting output_count = 0 Do While Not inf.AtEndOfLine line = inf.ReadLine() 'TABで区切られているデータを分割 cols = Split(line, vbTab) '桁数をそろえる cols(0) = Left(cols(0) & Space(10) ,10) cols(1) = Left(cols(1) & Space(5) , 5) cols(2) = Left(cols(1) & Space(4) , 4) '出力 outf.WriteLine(cols(0) & cols(1) & cols(2)) output_count = output_count + 1 Loop Call WScript.Echo(output_count & "件処理しました。") End Sub Call ColumnFormat()
© 2006 矢木浩人