本コンテンツをダウンロードする前にこちらの利用条件を必ずご確認いただき、内容に同意をしたうえでダウンロードしてください。 また、"コンテンツの利用条件"は下のボタンからダウンロードし、お手元で保管してください。
WinActorのファイル関連ライブラリを使用して、フルパスで指定したファイルのファイル名に日付を付与して、フルパスで指定された別フォルダに移動するサンプルシナリオ(以降、本サンプルシナリオ)について説明します。
本サンプルシナリオは、以下の処理を行います。
本サンプルシナリオでは、以下のWinActorモジュールを使用します。
07_文字列操作/02_切り出し・分割/文字列分割.ums5
08_日付関連/日付取得(yyyymmdd).ums5
13_ファイル関連/02_ファイル操作/ファイル移動.ums5
本サンプルシナリオは以下の環境で動作確認しています。
Windows 10
WinActor 5.3.0
本サンプルシナリオの実施方法は以下の通りです。
WinActorを起動し、展開したフォルダに含まれている本サンプルシナリオを読み込みます。
本サンプルシナリオを実行するために必要な値を、変数一覧で更新します。 本サンプルシナリオの実行にあたり、事前に設定が必要な変数は下記の2つです。
本サンプルシナリオを実行開始します。 ファイルの移動が完了すると、本サンプルシナリオは終了します。
本サンプルシナリオの実行終了後、移動元ファイル名が移動先フォルダ名に移動しています。 Step2の例の場合、「C:\winactor\abc.txt」が「C:\winactor\temp\yyyymmdd_abc.txt」として移動しています。yyyymmddには、実行した日付が入ります。
本サンプルシナリオでは、誤ったファイル名/フォルダ名を指定した場合、エラーメッセージが出力されます。
詳細については、エラーメッセージ一覧を参照してください。
本サンプルシナリオで使用している実装テクニックについて説明します。
本サンプルシナリオでは、フルパスからファイル名のみを抽出しています。
下記のようなファイルパスの場合を例に、本サンプルシナリオでの抽出方法についてご説明します。
ファイルパスは、上記のように「\」でいくつかのフォルダ名とファイル名を結合して指定されています。 この例の場合、
C:
フォルダ名
winactor
フォルダ名
test
フォルダ名
sample.txt
ファイル名
のように4つの要素から構成されており、ファイル名は必ず最後の要素となります。
つまりファイルパスにおいてのファイル名は、「ファイルパスを、最後の要素がファイル名」という特徴があるといえます。 この特徴を用いて、本サンプルシナリオでは文字列操作のライブラリの「文字列分割」によりファイル名を抽出しています。
「文字列分割」ライブラリは、「分割元文字列」を「区切文字列」で分割し、分割結果より何番目の情報を読み取るかを「インデックス」で指定するライブラリになります。 また、いくつの要素に分割できたかを「分割サイズ」として取得が可能です。 このライブラリに、「分割元文字列」として「ファイルパス」を、「区切文字列」として「\」を、「インデックス」として「最後の要素が何番目か」を指定すれば、特徴からファイル名のみを取得できます。
ただし、現在のWinActorライブラリでは、「最後の要素が何番目か」を取得するライブラリがないため、「文字列分割」ライブラリを一度同じように実行し、「分割元文字列」として「ファイルパス」を、「区切文字列」として「\」を、「インデックス」として「0」を指定して実行し、「分割サイズ」がいくつになるかを取得します。 上記の例であれば、「分割サイズ」として「4」の値が得られます。 その後に、「最後の要素が何番目か」を指定して改めて「文字列分割」を実行します。
この時、「最後の要素が何番目か」はプログラミングの配列のインデックスで指定するため、実際のサイズよりも1小さい値となります。 そのため、指定すべき分割サイズから1引いた値を指定する必要があります。 上記の例であれば、「3」を指定します。
本サンプルシナリオでは、「ノード」内にある「変数値設定」により、複数の値の結合を行っております。
日付 | 修正内容 | 版数 | ||||||
---|---|---|---|---|---|---|---|---|
|
|
|
||||||
|
|
|
本コンテンツをダウンロードする前にこちらの利用条件を必ずご確認いただき、内容に同意をしたうえでダウンロードしてください。 また、"コンテンツの利用条件"は下のボタンからダウンロードし、お手元で保管してください。
ファイルのダウンロード完了チェックを、ファイルの生成検知で行うサンプルシナリオとなります。
詳しくはこちら指定したフォルダ内の指定した条件(拡張子等)に合致するファイルのうち、古いファイルに対して処理を行うサンプルシナリオとなります。
詳しくはこちら複数フォルダから検索条件に該当した最新ファイルを別フォルダにコピーするサンプルシナリオとなります。
詳しくはこちら複数フォルダにある検索条件と一致するファイルのうち最新ファイルを別フォルダにコピーするサンプルシナリオとなります。
詳しくはこちら