アプリ版:「スタンプのみでお礼する」機能のリリースについて

FLEXlmを使ったライセンスの使用状況を管理したいと思い、10分置きに自動でそのタイミングにおける各種ライセンスの利用状況をテキストファイルとして自動保存するバッチプログラムを作成しました。
※この際、10分置きに別名でテキストファイルが作成されます
※SAMreportやFLEXnet Managerというツールがあるのは知っていますが、出来ればお金をかけずに済ませたいです

最終的には、これらのデータを集計し、横軸を時間、縦軸を各ライセンスの使用人数にしたグラフを作成したいと考えているのですが、その一方、このテキストファイルは必要無い情報を多く含んでいるため、その中から必要な情報(各ライセンスの利用人数&利用者名)のみを1つのExcelシート上に整理したいと考えています。

そこで教えて頂きたいのですが、ある規則に従った処理を複数のテキストデータ一括で処理する方法を教えて頂けませんでしょうか?
※今の私の知識では、1つのテキストデータ毎にある規則に従った処理を実行させる事しか分かりません・・・。
※ファイル名は「log_△□.txt」で統一されているため、指定したフォルダ内にある「log_△□.txt」という名前のファイル全てに対して自動で処理を行いたいです。

A 回答 (3件)

DirectoryInfoクラスのGetFilesメソッドでファイル名のパターンを指定してやれば For Eachなどで作業可能だろうと思います



Dim oDirInfo as New System.IO.DirectoryInfo("ログファイルのフォルダーパス")
Dim oFileInfo as System.IO.FileInfo

for each oFileInfo in oDirInfo.GetFiles("Log_*.txt")
  Call 1ファイルごとの処理
Next
といった具合でしょう
    • good
    • 0
この回答へのお礼

どうもありがとうございます。これを使えば私の意図する事が出来そうです。

お礼日時:2008/06/26 14:24

1つのファイルに対する処理の拡張で対処可能なように思います



1) 結果を保存するファイルを新規に作成する
2) 対象ファイルの選定を行う
3) 1つのファイルに対する処理を行う
  # ただし 結果の書き込みのオープン方法を追記とする
4) 対象ファイルが無くなるまで 2)へ戻って繰り返す
    • good
    • 0
この回答へのお礼

回答頂きありがとうございます。

2)の作業ですが、複数のファイルを一括でまとめて指定(もしくはある特定のフォルダ内にあるファイルを一括で自動処理)する方法はございますでしょうか?

お礼日時:2008/06/26 06:32

このケースでは、複数のファイルを1つのファイルにまとめてから処理できませんか。


そうすれば、”1つのテキストデータ毎にある規則に従った処理を実行させる事”で事足ります。

ファイルを1つにまとめるのは、
copy log_*.txt log_all.txt
程度のコマンドで済みますが・・
    • good
    • 0
この回答へのお礼

回答頂きどうもありがとうございます。

ファイルを1つにまとめる作業自体はバッチプログラム上で保存する際にファイル出力を上書きモード「>」では無く追加モード「>>」にすれば出来るのですが、出来れば1つのファイルに対して処理を行うプログラムを作った上で、その処理を任意のフォルダ内にある全てのファイルに対して一括で行いたいと考えています。

お礼日時:2008/06/26 06:29

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!