Java : ZipEntry - API使用例
ZipEntry (Java SE 19 & JDK 19) の使用例まとめです。
だいたいのメソッドを網羅済みです。
API仕様のおともにどうぞ。
概要
このクラスは、ZIPファイル・エントリを表すために使用されます。
ZipEntry クラスは、ZIPファイルに含まれる1つ1つのファイルおよびディレクトリを表します。
final var path = Path.of("R:", "java-work", "aaa.zip");
System.out.println(path); // R:\java-work\aaa.zip
// --------
// 圧縮
try (final var zos = new ZipOutputStream(Files.newOutputStream(path))) {
zos.putNextEntry(new ZipEntry("bbb.txt"));
zos.write("YYYYY".getBytes());
zos.putNextEntry(new ZipEntry("ccc.txt"));
zos.write("ZZZZZ".getBytes());
}
// --- PowerShell ---
//PS R:\java-work> ls -name
//aaa.zip
//
//PS R:\java-work> Expand-Archive .\aaa.zip .
//PS R:\java-work> ls -name
//aaa.zip
//bbb.txt
//ccc.txt
//
//PS R:\java-work> cat .\bbb.txt
//YYYYY
//PS R:\java-work> cat .\ccc.txt
//ZZZZZ
// --------
// 解凍
try (final var zis = new ZipInputStream(Files.newInputStream(path))) {
final var entry1 = zis.getNextEntry();
if (entry1 != null) {
System.out.println(entry1.getName()); // bbb.txt
final var uncompressed = zis.readAllBytes();
System.out.println(Arrays.toString(uncompressed)); // [89, 89, 89, 89, 89]
System.out.println(new String(uncompressed)); // YYYYY
}
final var entry2 = zis.getNextEntry();
if (entry2 != null) {
System.out.println(entry2.getName()); // ccc.txt
final var uncompressed = zis.readAllBytes();
System.out.println(Arrays.toString(uncompressed)); // [90, 90, 90, 90, 90]
System.out.println(new String(uncompressed)); // ZZZZZ
}
System.out.println(zis.getNextEntry()); // null
}
フィールド
static final int CENATT
中央ディレクトリの(CEN)ヘッダー内部ファイル属性のフィールド・オフセット。
System.out.println(ZipEntry.CENATT); // 36
static final int CENATX
中央ディレクトリの(CEN)ヘッダー外部ファイル属性フィールド・オフセット。
System.out.println(ZipEntry.CENATX); // 38
static final int CENCOM
中央ディレクトリの(CEN)ヘッダー・コメント長フィールド・オフセット。
System.out.println(ZipEntry.CENCOM); // 32
static final int CENCRC
中央ディレクトリの(CEN)ヘッダー非圧縮ファイルのcrc-32値フィールド・オフセット。
System.out.println(ZipEntry.CENCRC); // 16
static final int CENDSK
中央ディレクトリの(CEN)ヘッダー・ディスク番号の開始フィールド・オフセット。
System.out.println(ZipEntry.CENDSK); // 34
static final int CENEXT
中央ディレクトリの(CEN)ヘッダーの追加フィールド長フィールド・オフセット。
System.out.println(ZipEntry.CENEXT); // 30
static final int CENFLG
中央ディレクトリの(CEN)ヘッダー暗号化、復号化フラグのフィールド・オフセット。
System.out.println(ZipEntry.CENFLG); // 8
static final int CENHDR
中央ディレクトリの(CEN)ヘッダー・サイズ(バイト単位、(シグネチャを含む))。
System.out.println(ZipEntry.CENHDR); // 46
static final int CENHOW
中央ディレクトリの(CEN)ヘッダー圧縮メソッドのフィールド・オフセット。
System.out.println(ZipEntry.CENHOW); // 10
static final int CENLEN
中央ディレクトリの(CEN)ヘッダーの非圧縮サイズ・フィールド・オフセット。
System.out.println(ZipEntry.CENLEN); // 24
static final int CENNAM
中央ディレクトリの(CEN)ヘッダーのファイル名の長さフィールド・オフセット。
System.out.println(ZipEntry.CENNAM); // 28
static final int CENOFF
中央ディレクトリの(CEN)ヘッダーLOCヘッダーのオフセット・フィールドのオフセット。
System.out.println(ZipEntry.CENOFF); // 42
static final long CENSIG
中央ディレクトリの(CEN)ヘッダー・シグネチャ。
System.out.printf("%#x", ZipEntry.CENSIG); // 0x2014b50
static final int CENSIZ
中央ディレクトリの(CEN)ヘッダー圧縮サイズ・フィールド・オフセット。
System.out.println(ZipEntry.CENSIZ); // 20
static final int CENTIM
中央ディレクトリの(CEN)ヘッダー変更時間フィールド・オフセット。
System.out.println(ZipEntry.CENTIM); // 12
static final int CENVEM
フィールド・オフセットによって作成される中央ディレクトリ(CEN)ヘッダー・バージョン。
System.out.println(ZipEntry.CENVEM); // 4
static final int CENVER
フィールド・オフセットの抽出に必要な中央ディレクトリ(CEN)ヘッダー・バージョン。
System.out.println(ZipEntry.CENVER); // 6
static final int DEFLATED
圧縮された(デフレート)エントリのための圧縮メソッドです。
System.out.println(ZipEntry.DEFLATED); // 8
static final int ENDCOM
中央ディレクトリの(END)ヘッダーzipファイルのコメント長フィールド・オフセットの終わり。
System.out.println(ZipEntry.ENDCOM); // 20
static final int ENDHDR
中央ディレクトリの(END)ヘッダー・サイズの終了(バイト単位、(シグネチャを含む))。
System.out.println(ZipEntry.ENDHDR); // 22
static final int ENDOFF
最初のCENヘッダー・フィールドのオフセットに対する中央ディレクトリ(END)ヘッダー・オフセットの終了。
System.out.println(ZipEntry.ENDOFF); // 16
static final long ENDSIG
中央ディレクトリの(END)ヘッダー・シグネチャの終了。
System.out.printf("%#x", ZipEntry.ENDSIG); // 0x6054b50
static final int ENDSIZ
中央ディレクトリの(END)ヘッダー中央ディレクトリ・サイズ(バイト単位)フィールド・オフセットの終了。
System.out.println(ZipEntry.ENDSIZ); // 12
static final int ENDSUB
このディスク・フィールド・オフセット上のエントリの中央ディレクトリ(END)ヘッダー番号の終わり。
System.out.println(ZipEntry.ENDSUB); // 8
static final int ENDTOT
中央ディレクトリの(END)ヘッダーの入力フィールド・オフセットの合計数。
System.out.println(ZipEntry.ENDTOT); // 10
static final int EXTCRC
圧縮されていない余分なローカル(EXT)ヘッダーのcrc-32値フィールド・オフセット。
System.out.println(ZipEntry.EXTCRC); // 4
static final int EXTHDR
追加のローカル(EXT)ヘッダー・サイズ(バイト数(シグネチャを含む))。
System.out.println(ZipEntry.EXTHDR); // 16
static final int EXTLEN
余分なローカル(EXT)ヘッダーの非圧縮サイズ・フィールド・オフセット。
System.out.println(ZipEntry.EXTLEN); // 12
static final long EXTSIG
追加のローカル(EXT)ヘッダー・シグネチャ。
System.out.printf("%#x", ZipEntry.EXTSIG); // 0x8074b50
static final int EXTSIZ
追加のローカル(EXT)ヘッダー圧縮サイズ・フィールド・オフセット。
System.out.println(ZipEntry.EXTSIZ); // 8
static final int LOCCRC
ローカル・ファイル(LOC)ヘッダー非圧縮ファイルcrc-32値フィールド・オフセット。
System.out.println(ZipEntry.LOCCRC); // 14
static final int LOCEXT
ローカル・ファイル(LOC)ヘッダーの追加フィールド長フィールド・オフセット。
System.out.println(ZipEntry.LOCEXT); // 28
static final int LOCFLG
ローカル・ファイル(LOC)ヘッダー汎用ビット・フラグ・フィールド・オフセット。
System.out.println(ZipEntry.LOCFLG); // 6
static final int LOCHDR
ローカル・ファイルの(LOC)ヘッダー・サイズ(バイト単位、(シグネチャを含む))。
System.out.println(ZipEntry.LOCHDR); // 30
static final int LOCHOW
ローカル・ファイル(LOC)ヘッダー圧縮メソッドのフィールド・オフセット。
System.out.println(ZipEntry.LOCHOW); // 8
static final int LOCLEN
ローカル・ファイル(LOC)ヘッダーの非圧縮サイズ・フィールド・オフセット。
System.out.println(ZipEntry.LOCLEN); // 22
static final int LOCNAM
ローカル・ファイル(LOC)ヘッダーのファイル名の長さフィールド・オフセット。
System.out.println(ZipEntry.LOCNAM); // 26
static final long LOCSIG
ローカル・ファイル(LOC)ヘッダーのシグネチャ。
System.out.printf("%#x", ZipEntry.LOCSIG); // 0x4034b50
static final int LOCSIZ
ローカル・ファイルの(LOC)ヘッダー圧縮サイズ・フィールドのオフセット。
System.out.println(ZipEntry.LOCSIZ); // 18
static final int LOCTIM
ローカル・ファイル(LOC)ヘッダー変更時間フィールド・オフセット。
System.out.println(ZipEntry.LOCTIM); // 10
static final int LOCVER
フィールド・オフセットの抽出に必要なローカル・ファイル(LOC)ヘッダー・バージョン。
System.out.println(ZipEntry.LOCVER); // 4
static final int STORED
圧縮解除されたデータの圧縮メソッドです。
System.out.println(ZipEntry.STORED); // 0
コンストラクタ
ZipEntry (String name)
指定された名前の新しいzipエントリを作成します。
final var input = "aaaaa".getBytes();
// [97, 97, 97, 97, 97]
System.out.println(Arrays.toString(input));
final var out = new ByteArrayOutputStream();
try (final var zos = new ZipOutputStream(out)) {
final var entry = new ZipEntry("aaa.txt");
System.out.println(entry.getName()); // aaa.txt
zos.putNextEntry(entry);
zos.write(input);
}
final var compressed = out.toByteArray();
System.out.println(compressed.length); // 133
// [80, 75, 3, 4, 20, 0, 8, 8, 8, 0, -106, -118, 63, 86, 0, 0, 0, 0, ...]
System.out.println(Arrays.toString(compressed));
ZipEntry (ZipEntry e)
指定されたzipエントリのフィールドを継承する、新しいzipエントリを作成します。
final var entry1 = new ZipEntry("aaa.txt");
entry1.setComment("comment!");
final var fileTime = FileTime.from(
ZonedDateTime.of(2100, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC).toInstant());
entry1.setCreationTime(fileTime);
System.out.println(entry1.getName()); // aaa.txt
System.out.println(entry1.getComment()); // comment!
System.out.println(entry1.getCreationTime()); // 2100-01-01T00:00:00Z
final var entry2 = new ZipEntry(entry1);
System.out.println(entry2.getName()); // aaa.txt
System.out.println(entry2.getComment()); // comment!
System.out.println(entry2.getCreationTime()); // 2100-01-01T00:00:00Z
メソッド
Object clone ()
このエントリのコピーを返します。
final var entry = new ZipEntry("aaa.txt");
entry.setComment("comment!");
final var fileTime = FileTime.from(
ZonedDateTime.of(2100, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC).toInstant());
entry.setCreationTime(fileTime);
System.out.println(entry.getName()); // aaa.txt
System.out.println(entry.getComment()); // comment!
System.out.println(entry.getCreationTime()); // 2100-01-01T00:00:00Z
if (entry.clone() instanceof ZipEntry cloned) {
System.out.println(cloned.getName()); // aaa.txt
System.out.println(cloned.getComment()); // comment!
System.out.println(cloned.getCreationTime()); // 2100-01-01T00:00:00Z
}
String getComment ()
エントリのコメント文字列を返します。
final var path = Path.of("R:", "java-work", "aaa.zip");
System.out.println(path); // R:\java-work\aaa.zip
try (final var zos = new ZipOutputStream(Files.newOutputStream(path))) {
final var entry1 = new ZipEntry("bbb.txt");
entry1.setComment("BBB!");
zos.putNextEntry(entry1);
final var entry2 = new ZipEntry("ccc.txt");
entry2.setComment("CCC!");
zos.putNextEntry(entry2);
}
System.out.println(Files.size(path)); // 246
try (final var zipFile = new ZipFile(path.toFile())) {
zipFile.stream().forEach(entry -> {
System.out.println("-- entry --");
System.out.println("name : " + entry.getName());
System.out.println("comment : " + entry.getComment());
});
// 結果
// ↓
//-- entry --
//name : bbb.txt
//comment : BBB!
//-- entry --
//name : ccc.txt
//comment : CCC!
}
long getCompressedSize ()
圧縮されたエントリ・データのサイズを返します。
final var path = Path.of("R:", "java-work", "aaa.zip");
System.out.println(path); // R:\java-work\aaa.zip
try (final var zos = new ZipOutputStream(Files.newOutputStream(path))) {
final var input = "aaaaaaaaaa".getBytes();
System.out.println(input.length); // 10
final var entry = new ZipEntry("aaa.txt");
System.out.println(entry.getSize()); // -1
System.out.println(entry.getCompressedSize()); // -1
System.out.println(entry.getCrc()); // -1
zos.putNextEntry(entry);
zos.write(input);
zos.closeEntry();
System.out.println(entry.getSize()); // 10
System.out.println(entry.getCompressedSize()); // 5
System.out.println(entry.getCrc()); // 1276235248
}
long getCrc ()
圧縮解除されたエントリ・データのCRC-32チェックサムを返します。
このメソッドの使用例は、getCompressedSize() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
FileTime getCreationTime ()
エントリの作成時間を返します。
final var path = Path.of("R:", "java-work", "aaa.zip");
System.out.println(path); // R:\java-work\aaa.zip
try (final var zos = new ZipOutputStream(Files.newOutputStream(path))) {
final var fileTime = FileTime.from(
ZonedDateTime.of(2100, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC).toInstant());
System.out.println(fileTime); // 2100-01-01T00:00:00Z
final var entry = new ZipEntry("bbb.txt");
entry.setCreationTime(fileTime);
zos.putNextEntry(entry);
}
System.out.println(Files.size(path)); // 202
try (final var zipFile = new ZipFile(path.toFile())) {
zipFile.stream().forEach(entry -> {
System.out.println("-- entry --");
System.out.println("name : " + entry.getName());
System.out.println("creation time : " + entry.getCreationTime());
});
// 結果
// ↓
//-- entry --
//name : bbb.txt
//creation time : 2100-01-01T00:00:00Z
}
byte[] getExtra ()
エントリのエクストラ・フィールド・データを返します。
final var path = Path.of("R:", "java-work", "aaa.zip");
System.out.println(path); // R:\java-work\aaa.zip
try (final var zos = new ZipOutputStream(Files.newOutputStream(path))) {
final byte[] extra = {1, 2, 3, 4, 5};
final var entry = new ZipEntry("bbb.txt");
entry.setExtra(extra);
zos.putNextEntry(entry);
}
System.out.println(Files.size(path)); // 140
try (final var zipFile = new ZipFile(path.toFile())) {
zipFile.stream().forEach(entry -> {
System.out.println("-- entry --");
System.out.println("name : " + entry.getName());
System.out.println("extra : " + Arrays.toString(entry.getExtra()));
});
// 結果
// ↓
//-- entry --
//name : bbb.txt
//extra : [1, 2, 3, 4, 5]
}
FileTime getLastAccessTime ()
エントリの最終アクセス時間を返します。
final var path = Path.of("R:", "java-work", "aaa.zip");
System.out.println(path); // R:\java-work\aaa.zip
try (final var zos = new ZipOutputStream(Files.newOutputStream(path))) {
final var fileTime = FileTime.from(
ZonedDateTime.of(2100, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC).toInstant());
System.out.println(fileTime); // 2100-01-01T00:00:00Z
final var entry = new ZipEntry("bbb.txt");
entry.setLastAccessTime(fileTime);
zos.putNextEntry(entry);
}
System.out.println(Files.size(path)); // 202
try (final var zipFile = new ZipFile(path.toFile())) {
zipFile.stream().forEach(entry -> {
System.out.println("-- entry --");
System.out.println("name : " + entry.getName());
System.out.println("last access time : " + entry.getLastAccessTime());
});
// 結果
// ↓
//-- entry --
//name : bbb.txt
//last access time : 2100-01-01T00:00:00Z
}
FileTime getLastModifiedTime ()
エントリの最終変更時間を返します。
final var path = Path.of("R:", "java-work", "aaa.zip");
System.out.println(path); // R:\java-work\aaa.zip
System.out.println(Instant.now()); // 2023-02-15T09:42:49.865711800Z
try (final var zos = new ZipOutputStream(Files.newOutputStream(path))) {
final var entry1 = new ZipEntry("bbb.txt");
zos.putNextEntry(entry1);
final var fileTime = FileTime.from(
ZonedDateTime.of(2100, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC).toInstant());
System.out.println(fileTime); // 2100-01-01T00:00:00Z
final var entry2 = new ZipEntry("ccc.txt");
entry2.setLastModifiedTime(fileTime);
zos.putNextEntry(entry2);
}
System.out.println(Files.size(path)); // 310
try (final var zipFile = new ZipFile(path.toFile())) {
zipFile.stream().forEach(entry -> {
System.out.println("-- entry --");
System.out.println("name : " + entry.getName());
System.out.println("last modified time : " + entry.getLastModifiedTime());
});
// 結果
// ↓
//-- entry --
//name : bbb.txt
//last modified time : 2023-02-15T09:42:48Z
//-- entry --
//name : ccc.txt
//last modified time : 2100-01-01T00:00:00Z
}
int getMethod ()
エントリの圧縮メソッドを返します。
final var path = Path.of("R:", "java-work", "aaa.zip");
System.out.println(path); // R:\java-work\aaa.zip
try (final var zos = new ZipOutputStream(Files.newOutputStream(path))) {
final var input = "aaaaaaaaaa".getBytes();
System.out.println(input.length); // 10
final var crc = new CRC32();
crc.update(input);
System.out.println(crc.getValue()); // 1276235248
final var entry1 = new ZipEntry("bbb.txt");
entry1.setMethod(ZipEntry.STORED);
entry1.setCrc(crc.getValue());
entry1.setSize(input.length);
zos.putNextEntry(entry1);
zos.write(input);
final var entry2 = new ZipEntry("ccc.txt");
entry2.setMethod(ZipEntry.STORED);
entry2.setCrc(crc.getValue());
entry2.setCompressedSize(input.length);
zos.putNextEntry(entry2);
zos.write(input);
}
System.out.println(Files.size(path)); // 222
try (final var zipFile = new ZipFile(path.toFile())) {
zipFile.stream().forEach(entry -> {
System.out.println("-- entry --");
System.out.println("name : " + entry.getName());
System.out.println("sorted : " + (entry.getMethod() == ZipEntry.STORED));
System.out.println("crc : " + entry.getCrc());
System.out.println("size : " + entry.getSize());
System.out.println("compressed size : " + entry.getCompressedSize());
});
// 結果
// ↓
//-- entry --
//name : bbb.txt
//sorted : true
//crc : 1276235248
//size : 10
//compressed size : 10
//-- entry --
//name : ccc.txt
//sorted : true
//crc : 1276235248
//size : 10
//compressed size : 10
}
String getName ()
エントリの名前を返します。
このメソッドの使用例は、ZipEntry(String name) にまとめて記載しました。
そちらのAPI使用例をご参照ください。
long getSize ()
エントリ・データの圧縮解除時のサイズを返します。
このメソッドの使用例は、getCompressedSize() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
long getTime ()
エントリの最終変更時間を返します。
final var path = Path.of("R:", "java-work", "aaa.zip");
System.out.println(path); // R:\java-work\aaa.zip
System.out.println(Instant.now()); // 2023-02-15T10:04:06.918957400Z
try (final var zos = new ZipOutputStream(Files.newOutputStream(path))) {
final var entry1 = new ZipEntry("bbb.txt");
zos.putNextEntry(entry1);
final var instant = ZonedDateTime.of(2100, 1, 1, 0, 0, 0, 0, ZoneOffset.UTC).toInstant();
System.out.println(instant); // 2100-01-01T00:00:00Z
final var entry2 = new ZipEntry("ccc.txt");
entry2.setTime(instant.toEpochMilli());
zos.putNextEntry(entry2);
}
try (final var zipFile = new ZipFile(path.toFile())) {
zipFile.stream().forEach(entry -> {
System.out.println("-- entry --");
System.out.println("name : " + entry.getName());
System.out.println("time : " + Instant.ofEpochMilli(entry.getTime()));
});
// 結果
// ↓
//-- entry --
//name : bbb.txt
//time : 2023-02-15T10:04:06Z
//-- entry --
//name : ccc.txt
//time : 2100-01-01T00:00:00Z
}
LocalDateTime getTimeLocal ()
ローカル日時のエントリの最終更新時間を返します。
final var path = Path.of("R:", "java-work", "aaa.zip");
System.out.println(path); // R:\java-work\aaa.zip
System.out.println(LocalDateTime.now()); // 2023-02-15T19:14:25.556582500
try (final var zos = new ZipOutputStream(Files.newOutputStream(path))) {
final var entry1 = new ZipEntry("bbb.txt");
zos.putNextEntry(entry1);
final var time = LocalDateTime.of(2100, 1, 1, 0, 0);
System.out.println(time); // 2100-01-01T00:00
final var entry2 = new ZipEntry("ccc.txt");
entry2.setTimeLocal(time);
zos.putNextEntry(entry2);
}
System.out.println(Files.size(path)); // 238
try (final var zipFile = new ZipFile(path.toFile())) {
zipFile.stream().forEach(entry -> {
System.out.println("-- entry --");
System.out.println("name : " + entry.getName());
System.out.println("time : " + entry.getTimeLocal());
});
// 結果
// ↓
//-- entry --
//name : bbb.txt
//time : 2023-02-15T19:14:24
//-- entry --
//name : ccc.txt
//time : 2100-01-01T00:00
}
int hashCode ()
このエントリのハッシュ・コード値を返します。
final var entry1 = new ZipEntry("aaa.txt");
System.out.println(entry1.hashCode()); // -1238361277
final var entry2 = new ZipEntry("bbb.txt");
System.out.println(entry2.hashCode()); // -321304924
boolean isDirectory ()
これがディレクトリ・エントリである場合に、trueを返します。
final var path = Path.of("R:", "java-work", "aaa.zip");
System.out.println(path); // R:\java-work\aaa.zip
// --------
// 圧縮
try (final var zos = new ZipOutputStream(Files.newOutputStream(path))) {
final var entry = new ZipEntry("dir/");
zos.putNextEntry(entry);
System.out.println(entry.isDirectory()); // true
zos.putNextEntry(new ZipEntry("dir/bbb.txt"));
zos.write("ZZZZZ".getBytes());
}
// --- PowerShell ---
//PS R:\java-work> ls -name
//aaa.zip
//
//PS R:\java-work> Expand-Archive .\aaa.zip .
//PS R:\java-work> ls -name
//dir
//aaa.zip
//
//PS R:\java-work> cat .\dir\bbb.txt
//ZZZZZ
// --------
// 解凍
try (final var zis = new ZipInputStream(Files.newInputStream(path))) {
final var entry1 = zis.getNextEntry();
if (entry1 != null) {
System.out.println(entry1.getName()); // dir/
System.out.println(entry1.isDirectory()); // true
}
final var entry2 = zis.getNextEntry();
if (entry2 != null) {
System.out.println(entry2.getName()); // dir/bbb.txt
System.out.println(entry2.isDirectory()); // false
final var uncompressed = zis.readAllBytes();
System.out.println(Arrays.toString(uncompressed)); // [90, 90, 90, 90, 90]
System.out.println(new String(uncompressed)); // ZZZZZ
}
System.out.println(zis.getNextEntry()); // null
}
void setComment (String comment)
エントリにオプションのコメント文字列を設定します。
このメソッドの使用例は、getComment() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
void setCompressedSize (long csize)
圧縮されたエントリ・データのサイズを設定します。
このメソッドの使用例は、getMethod() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
void setCrc (long crc)
圧縮解除されたエントリ・データのCRC-32チェックサムを設定します。
このメソッドの使用例は、getMethod() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
ZipEntry setCreationTime (FileTime time)
エントリの作成時間を設定します。
このメソッドの使用例は、getCreationTime() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
void setExtra (byte[] extra)
エントリにオプションのエクストラ・フィールド・データを設定します。
このメソッドの使用例は、getExtra() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
ZipEntry setLastAccessTime (FileTime time)
エントリの最終アクセス時間を設定します。
このメソッドの使用例は、getLastAccessTime() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
ZipEntry setLastModifiedTime (FileTime time)
エントリの最終変更時間を設定します。
このメソッドの使用例は、getLastModifiedTime() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
void setMethod (int method)
エントリの圧縮メソッドを設定します。
このメソッドの使用例は、getMethod() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
void setSize (long size)
エントリ・データの圧縮解除時のサイズを設定します。
このメソッドの使用例は、getMethod() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
void setTime (long time)
エントリの最終変更時間を設定します。
このメソッドの使用例は、getTime() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
void setTimeLocal (LocalDateTime time)
エントリの最終更新時間をローカルの日時に設定します。
このメソッドの使用例は、getTimeLocal() にまとめて記載しました。
そちらのAPI使用例をご参照ください。
String toString ()
ZIPエントリの文字列表現を返します。
final var entry1 = new ZipEntry("aaa.txt");
final var str1 = entry1.toString();
System.out.println(str1); // aaa.txt
final var entry2 = new ZipEntry("bbb.txt");
final var str2 = entry2.toString();
System.out.println(str2); // bbb.txt