BAT ファイルで記述するとこのような形になります。
1: FOR %%i in (d:\*.png) do (
2: echo %%i
3: )
これは D:\ 直下に存在する png ファイルの一覧を出力する処理になります。これと同様のものをプログラムで記述すると次のような形になります。
1: Dim fileLists As String() = System.IO.Directory.GetFiles("D:\", "*.png")
2: For Each item As String In fileLists
3: 'なんらかの処理
4: Next
ワークフローでも同様です。
Assign アクティビティで GetFiles メソッドの戻り値を取得し、ForEach アクティビティでループする形がやりやすいと思います。なお、BAT ファイルでの FOR ステートメントでは再帰的に検索を行う /R スイッチもあり、下記のように記述できます。
1: FOR /R "d:\" %%i in (*.png) do (
2: echo %%i
3: )
この場合は、D:\ 直下のみではなくサブフォルダまで全て検索対象となります。これをロジックやワークフローで行う場合は、GetFIles メソッドの別パターンを利用します。
1: Dim fileLists As String() = System.IO.Directory.GetFiles("D:\", "*.png", SearchOption.AllDirectories)
2: For Each item As String In fileLists
3: '何らかの処理
4: Next
ワークフローでは、Assign アクティビティで指定している計算式を同様に書き換えることで実現されます。
0 件のコメント:
コメントを投稿