12

こんにちは、NTTデータ WinActor技術支援チームのN.Sです。
いつもユーザーフォーラムをご利用いただき、ありがとうございます。
今回は、NTT-AT社が提供しているプチライブラリ「ファイル情報取得(ファイルサイズ)」について、ご紹介します!
 
 
 

ライブラリの概要
指定したファイルのファイルサイズを取得するライブラリです。
WAで操作するファイルのサイズを知りたい、ということはありませんか?
例えば、「システムにファイルをアップロードしたいが、ファイルサイズの制限がある」、「ファイルサイズを管理しておきたい」など・・・
そのような時に使えるライブラリです!
 
それでは実際に見てみましょう。
ライブラリの設定項目は、「ファイルサイズを取得したいファイル名」と、「取得したファイルサイズを格納する変数」の2つで、簡単に設定できますね。
 

 
 
 
 
実際に使ってみる
それではこのライブラリを実際に使ってみます。
今回は、ファイルサイズが異なる3つのファイルを用意して、それぞれファイルサイズを取得してみたいと思います。
 

 
 
プロパティ設定は以下の通りです。
取得したファイルサイズは、変数[ファイルサイズ]に格納し、待機ボックスで結果を表示します。
 

 
 
プロパティ設定が完了したので、シナリオを実行して3つのファイルそれぞれのファイルサイズを取得してみましょう。
すると以下のようにファイルサイズが取得できました!
 

 
 
この取得したファイルサイズは、ファイルのプロパティ画面から確認できるファイルサイズのようです。
エクスプローラの詳細表示で見えるサイズではないので注意してください!
 
 
 〇 ファイルのプロパティ               × エクスプローラ
 

 
 
 
ライブラリを使ってサイズ判定してみよう
初めに例にあげた、ファイルサイズの制限がある場合どのように判定したらよいのか、実際にやってみたいと思います。
ファイルサイズの制限が「15MB」として、「ファイルが15MB以上」「ファイルが15MB未満」どちらかなのか分岐で判定してみます。
シナリオを作成してみると以下のようになります。(今回はGBとTBのファイルは処理の対象外としています。)
 

 
 
それではシナリオについて順番に解説していきます。
①「ファイル情報取得(ファイルサイズ)」を使用して、[ファイルサイズ]を取得します。
②「部分一致比較」を使用して、取得した[ファイルサイズ]に「MB」という文字列が含まれるか判定します。
  含まれる場合は、次へ進みます。
  含まれない場合は、待機ボックスでファイルサイズが15MB未満のメッセージを表示。
 

 
 
③「文字列削除」を使用して、取得した[ファイルサイズ]の単位を文字数分削除します。
 今回は「MB」の2文字を後ろから削除します。  ※文字列置換を使用しても構いません。
 

 
 
④「数値大小比較(Dbl精度)」を使用して、15と取得した[ファイルサイズ(数値)]を比較します。
   15 =[ファイルサイズ(数値)]の場合、比較結果は「0」
   15 > [ファイルサイズ(数値)]の場合、比較結果は「1」  ← 15未満の場合は比較結果に「1」が返される
   15 < [ファイルサイズ(数値)]の場合、比較結果は「2」
 

 
 
⑤「分岐」を使用して、比較結果が「1」と等しいかどうか判定します。
  比較結果が「1」の場合は、ファイルサイズが「15MB未満」
  比較結果が「1以外」の場合は、ファイルサイズが「15MB以上」
 

 
 
準備した3ファイル分、シナリオ実行した結果は以下のようになりました。
 

 
 
 
まとめ 
ファイルサイズを知りたい場面は多くないかもしれませんが、
プチライブラリダウンロードしておき使い方を理解しておくだけでも、今後役に立つ時がくるのかなぁ、と個人的には感じます。
 
今回長くなってしまいましたが、最後までコラムを読んでくださりありがとうございます。
サイズ判定についても、サイズ判定ってどうやるんだっけ!と思った時にこのコラムが引っかかり、みなさまに活用いただけるとなお嬉しく思います。
また、こんな場面でよく使っているよ!、こういう使い方もしているよ!、などコメントあれば、ぜひぜひお待ちしております。
 
今回紹介したプチライブラリは以下URLからダウンロードすることができます!
■「指定したファイルのファイルサイズを取得するライブラリ」
https://winactor.biz/library/2018/11/29_512.html
 
 

 
おわりに
この記事が面白かった、参考になったと思っていただけたら、ぜひ「いいね!」ボタンを押してください。
コメントもお待ちしています。
それでは、また次回!
 
※「いいね」はユーザーフォーラムに会員登録済みの方がログインしているときに押下できます。
ユーザーフォーラムの会員登録はメールアドレスがあればどなたでも無料で登録できます。
会員登録すると、質問への回答が見れたり、共有シナリオや事例集のダウンロードといった特典があります!
 

Zawawa 回答した質問
回答とコメントは、会員登録(無料)で閲覧できるようになります。