「フォルダの展開解凍」のパスの指定の仕方

フォルダを展開/解答の展開ファイルのパスの指定やり方が分かりません。

【やりたいこと】
展開元にあるzip形式のフォルダを展開し、zip中身のExcelの名前を変更し、展開元フォルダに保存後
元のzipフォルダを削除する。

【躓いていること】
ファイル名可変なためファイル名ではなく、zip形式のフォルダを指定して展開したい。
「フォルダのパス+*zip」で展開するファイルを指定できなかったため
Directory.GetFilesを使用するもエラーになる。

作成時に参考

「ファイルを展開/解凍」アクティビティの「展開するファイル」には、ひとつのファイルしか指定できません(厳密には String型のみ)。
共有いただいた画面ですと、 Directory.GetFiles(展開元, "*.zip") と指定されていますが、この関数は指定の条件にマッチするファイル名の配列(String[]型)が返されます。ここで型が一致せず変換できない、というのが表示されているエラーです。

解決策についてですが、ZIPファイルは必ずひとつのみ、という前提でしょうか。それとも、複数になる可能性もありますでしょうか。

  • ひとつのみの場合
    • 「展開するファイル」を、Directory.GetFiles(展開元, "*.zip")(0) にしてみてください。
      ZIPファイルが1つ以上あれば、そのうちの1つを処理します。ファイルがない場合は、エラーになります。
  • 複数になる可能性がある場合
    • 「繰り返し(コレクションの各要素)」アクティビティを使用し、ファイル名の配列からひとつずつ処理するループを作成します。そのループの中で、ひとつずつのファイルに対して「ファイルを展開/解凍」アクティビティを使用してください。
1 Like

This topic was automatically closed 3 days after the last reply. New replies are no longer allowed.