File file3 = new File("d:" + File.separator + "hello.txt");
try {
InputStream input1 = new FileInputStream(file1);
InputStream input2 = new FileInputStream(file2);
OutputStream output = new FileOutputStream(file3);
// 合并流
SequenceInputStream sis = new SequenceInputStream(input1, input2);
int temp = 0;
while ((temp = sis.read()) != -1) {
output.write(temp);
}
input1.close();
input2.close();
output.close();
sis.close();
} catch (Exception e) {
}
}
18 ZipOutputStream
//单个文件压缩 ZipOutputStream类
public static void ZipOutputStreamDemo(){
File file = new File(filepath);
File zipFile = new File(zipfilepath);
try {
InputStream input = new FileInputStream(file);
ZipOutputStream zipOut = new ZipOutputStream(new FileOutputStream(
zipFile));
zipOut.putNextEntry(new ZipEntry(file.getName()));
// 设置注释
zipOut.setComment("hello");
int temp = 0;
while ((temp = input.read()) != -1) {
zipOut.write(temp);
}
input.close();
zipOut.close();
} catch (Exception e) {
}
}
19 多个文件压缩
// 多个文件压缩
public static void ZipOutputStreamDemo2(){
// 要被压缩的文件夹
File file = new File(zipfolderpath);
File zipFile = new File("c:" + File.separator + "zipFile.zip");
InputStream input = null;
try {
ZipOutputStream zipOut = new ZipOutputStream(new FileOutputStream(
zipFile));
zipOut.setComment("hello");
if (file.isDirectory()) {
File[] files = file.listFiles();
for (int i = 0; i < files.length; ++i) {
input = new FileInputStream(files[i]);
zipOut.putNextEntry(new ZipEntry(file.getName()
+ File.separator + files[i].getName()));
int temp = 0;
while ((temp = input.read()) != -1) {
zipOut.write(temp);
}
input.close();
}
}
zipOut.close();
} catch (Exception e) {
}
}
20 单个文件解压
// 单个文件解压
public static void ZipFileDemo(){
File file = new File("d:" + File.separator + "hello.zip");
File outFile = new File("d:" + File.separator + "unZipFile.txt");
try {
ZipFile zipFile = new ZipFile(file);
ZipEntry entry = zipFile.getEntry("hello.txt");
InputStream input = zipFile.getInputStream(entry);
OutputStream output = new FileOutputStream(outFile);
int temp = 0;
while ((temp = input.read()) != -1) {
output.write(temp);
}
input.close();
output.close();
} catch (Exception e) {
}
}
21.多个文件解压
// 多个文件解压,当我们需要解压缩多个文件的时候,ZipEntry就无法使用了,
//如果想操作更加复杂的压缩文件,我们就必须使用ZipInputStream类
public static void ZipFileDemo2