gpt4 book ai didi

java - 如何使用输入流列表创建 ZIP 文件?

转载 作者:塔克拉玛干 更新时间:2023-11-03 03:45:07 27 4
gpt4 key购买 nike

在我的例子中,我必须从我的网络应用程序的资源文件夹中下载图像。现在我正在使用以下代码通过 URL 下载图像。

url = new URL(properties.getOesServerURL() + "//resources//WebFiles//images//" + imgPath);

filename = url.getFile();

is = url.openStream();
os = new FileOutputStream(sClientPhysicalPath + "//resources//WebFiles//images//" + imgPath);

b = new byte[2048];

while ((length = is.read(b)) != -1) {
os.write(b, 0, length);
}

但我想要一次操作来一次读取所有图像并为此创建一个 zip 文件。我不太了解序列输入流和 zip 输入流的使用,所以如果可以的话,请告诉我。

最佳答案

我认为您能够执行此操作的唯一方法如下所示:

try {

ZipOutputStream zip = new ZipOutputStream(new FileOutputStream("C:/archive.zip"));

//GetImgURLs() is however you get your image URLs

for(URL imgURL : GetImgURLs()) {
is = imgURL.openStream();
zip.putNextEntry(new ZipEntry(imgURL.getFile()));
int length;

byte[] b = new byte[2048];

while((length = is.read(b)) > 0) {
zip.write(b, 0, length);
}
zip.closeEntry();
is.close();
}
zip.close();
}

引用:ZipOutputStream Example

关于java - 如何使用输入流列表创建 ZIP 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18417266/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com