ここは旧式の4DドキュメントWebサイトです。最新のアップデートされたドキュメントを読むには新サイトをご利用下さい→ developer.4d.com

ホーム

 
4D v19.8
ZIP Read archive

ZIP Read archive 


 

ZIP Read archive ( zipFile {; password} ) -> 戻り値 
引数   説明
zipFile  オブジェクト in ZIPアーカイブファイル
password  テキスト in ZIPアーカイブのパスワード(必要であれば)
戻り値  オブジェクト in アーカイブオブジェクト

説明   

ZIP Read archive コマンドは、zipFile 引数で指定したファイルのコンテンツを取得し、それをオブジェクト形式で返します。

注: このコマンドはZIP アーカイブを展開することはしません。その中身に関する情報を提供するのみです。アーカイブのコンテンツを取り出すためには、file.copyTo( ) あるいは folder.copyTo( )などのメソッドを使用する必要があります。

zipFile 引数には、圧縮されたZIP アーカイブを詐称しているFile オブジェクトを渡します。ターゲットのアーカイブファイルはZIP Read archive が実行を終えるまで(全てのコンテンツ/参照が取得/解放される)までは開いた状態となり、その後自動的に閉じられます。

zipFile 引数で指定したZIP ファイルがパスワードで保護されていた場合、任意のpassword 引数を使用してパスワードを提供する必要があります。パスワードが必要なのに、コンテンツを読み出そうとしている時にパスワードが提示されなかった場合、エラーが生成されます。

 

返されるオブジェクト

返されるオブジェクトには単一の"root"プロパティを格納されており、その値はFolder オブジェクトです。このフォルダーにZIP アーカイブの全てのコンテンツの詳細が記述されています:

 

 プロパティ    詳細
 root  オブジェクト  ZIP アーカイブのコンテンツを格納しているバーチャルなフォルダ

 

"root" フォルダーとそのコンテンツは、ファイルとフォルダ メソッドとプロパティを使用することで操作可能です。

例題  

ZIP ファイルオブジェクトのコンテンツを取得して見たい場合を考えます:

 C_OBJECT($archive;$path)
 
 $path:=Folder(fk desktop folder).file("MyDocs/Archive.zip")
 $archive:=ZIP Read archive($path)

 

アーカイブ内のファイルとフォルダーの一覧を取得したい場合:

 $folders:=$archive.root.folders()
 $files:=$archive.root.files()

 

コンテンツのファイルを、root フォルダーから取り出すことなく中身を読み出したい場合:

 If($files[$i].extension=".txt")
    $txt:=$files[$i].getText()
 Else
    $blob:=$files[$i].getContent()
 End if

 

root フォルダーから取り出したい場合:

  // あるファイルを取得する
 $folderResult:=$files[$i].copyTo(Folder(fk desktop folder).folder("MyDocs"))
 
  // 全てのファイルを取得する
 $folderResult:=$archive.root.copyTo(Folder(fk desktop folder).folder("MyDocs"))



参照 

ZIP Create archive
ZIPアーカイブについて
ファイルとフォルダ

 
プロパティ 

プロダクト: 4D
テーマ: ファイルとフォルダ
番号: 1637

This command can be run in preemptive processes

 
ページの目次 
 
履歴 

初出: 4D v18

 
ARTICLE USAGE

ランゲージリファレンス ( 4D v19.5)
ランゲージリファレンス ( 4D v19.6)
ランゲージリファレンス ( 4D v19.7)
ランゲージリファレンス ( 4D v19.8)