java实现url文件压缩成zip的url
时间: 2023-12-28 15:03:53 浏览: 132
以下是用Java实现将URL文件压缩成Zip文件的示例代码:
```java
import java.io.*;
import java.net.URL;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
public class URLZipper {
public static void main(String[] args) throws IOException {
// URL of the file to be zipped
String url = "http://example.com/file.txt";
// output file name and path
String outputFile = "output.zip";
// create output stream
FileOutputStream fos = new FileOutputStream(outputFile);
// create zip stream
ZipOutputStream zos = new ZipOutputStream(fos);
// fetch data from URL
URL fileUrl = new URL(url);
InputStream is = fileUrl.openStream();
// create zip entry
ZipEntry zipEntry = new ZipEntry(fileUrl.getFile());
// put next entry into zip file
zos.putNextEntry(zipEntry);
// buffer for reading data from URL
byte[] buffer = new byte[1024];
int bytesRead;
// read data from URL and write it to zip file
while ((bytesRead = is.read(buffer)) > 0) {
zos.write(buffer, 0, bytesRead);
}
// close streams
is.close();
zos.closeEntry();
zos.close();
System.out.println("File successfully compressed into " + outputFile);
}
}
```
在此示例中,我们创建了一个名为URLZipper的Java类,它使用Java的ZipOutputStream类将URL文件压缩成Zip文件。该类具有一个main方法,该方法执行以下操作:
1. 定义要压缩的文件的URL和输出Zip文件的名称和路径。
2. 创建一个FileOutputStream对象,该对象写入Zip文件。
3. 创建一个ZipOutputStream对象,该对象将数据写入Zip文件。
4. 从URL获取数据并将其写入Zip文件。
5. 关闭所有流并打印成功消息。
请注意,此示例假定输入的URL文件是可用的,并且您有适当的访问权限。
阅读全文