gpt4 book ai didi

Java - 从网站压缩文件?

转载 作者:行者123 更新时间:2023-11-30 11:51:42 26 4
gpt4 key购买 nike

当然,我只是想知道如何使用 java 在 Web 上压缩文件。

我知道如何对硬盘驱动器上的目录执行此操作,但不知道如何对网站执行此操作:

ZipFile zipfile = new ZipFile("C:/Documents and Settings/User/desktop/something.file");

非常感谢。

最佳答案

所以我认为你要下载并压缩一个文件。这是两个不同的任务,因此您需要做两件事:

  • 从网上下载文件的东西
  • 将其压缩成 zip 文件的东西

我建议你使用Apache HttpComponents下载文件,Apache Compress对其进行压缩。

然后代码会变成这样......

    // Obtain reference to file
HttpGet httpGet = new HttpGet("http://blahblablah.com/file.txt");
HttpResponse httpResponse = httpclient.execute(httpGet);
HttpEntity httpEntity = httpResponse.getEntity();

// Create the output ZIP file
ZipArchiveOutputStream zip = new ZipArchiveOutputStream(zipFile);

try {
// Write a file header in the .zip file
ArchiveEntry entry = new ZipArchiveEntry("file.txt");
zip.putArchiveEntry(entry);

// Download the file and write it to a compressed file
IOUtils.copy(httpEntity.getContent(), zip);

// The file is now written
zip.closeArchiveEntry();
} finally {
// Ensure output file is closed
zip.close();
}

它是如何工作的? HttpComponents 正在获取文件的 InputStream,Compress 正在提供 OutputStream。然后你只是从一个流复制到另一个流。就像变魔术一样!

关于Java - 从网站压缩文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7299740/

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