• ZIPUtil


    package Testlink;
    
    import java.io.File;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.io.PrintStream;
    import java.nio.charset.Charset;
    import java.util.Enumeration;
    import java.util.zip.ZipEntry;
    import java.util.zip.ZipFile;
    
    public class ZIPUtil {
    	private File workspaceFile;
    	private File dirFile;
    	private File jmeterDirectory;
    	private File jmeterZip;
    	private String workspacePath;
    	private String jmeterDirectoryPath;
    	private String jmeterZipPath;
    
    	public void UnZipFile() throws IOException {
    		workspaceFile = new File("");
    		workspacePath = workspaceFile.getAbsolutePath();
    
    		dirFile = new File(workspacePath);
    
    		File[] files = dirFile.listFiles();
    
    		jmeterDirectoryPath = (workspacePath + "\JmeterFolder");
    
    		jmeterDirectory = new File(jmeterDirectoryPath);
    
    		File[] zipFiles =jmeterDirectory.listFiles();
    
    		jmeterZipPath = (jmeterDirectoryPath + "\apache-jmeter-4.0.zip");
    
    		jmeterZip = new File(jmeterZipPath);
    
    		ZipFile zipFile = new ZipFile(jmeterZip, Charset.forName("GBK"));
    		
    		if (files.length != 0) {
    			File[] arrayOfFile1;
    			int j = (arrayOfFile1 = files).length;
    			for (int i = 0; i < j; i++) {
    				File file = arrayOfFile1[i];
    				if (file.getName().equals("JmeterFolder")) {
    					if (zipFiles.length != 0) {
    						File[] arrayOfFile2;
    						int m = (arrayOfFile2 = zipFiles).length;
    						for (int k = 0; k < m; k++) {
    							File jmeterZipFile = arrayOfFile2[k];
    							if (jmeterZipFile.getName().equals("apache-jmeter-4.0.zip")) {
    								for (Enumeration entries = zipFile.entries(); entries.hasMoreElements();) {
    									ZipEntry entry = (ZipEntry) entries.nextElement();
    									String zipEntryName = entry.getName();
    									InputStream in = zipFile.getInputStream(entry);
    									String outPath = (jmeterDirectoryPath + "\" + zipEntryName).replaceAll("\*",
    											"/");
    
    									File jmeterFile = new File(outPath.substring(0, outPath.lastIndexOf('/')));
    									if (!jmeterFile.exists()) {
    										jmeterFile.mkdirs();
    									}
    									if (!new File(outPath).isDirectory()) {
    										System.out.println(outPath);
    										OutputStream out = new FileOutputStream(outPath);
    										byte[] buf1 = new byte[1024];
    										int len;
    										while((len=in.read(buf1, 0, 1024))!=-1)  {
    											out.write(buf1, 0, len);
    										}
    										in.close();
    										out.close();
    									}
    								}
    								System.out.println("******************解压完毕********************");
    							} else {
    								System.out.println("apache-jmeter-4.0.zip文件不存在");
    							}
    						}
    					} else {
    						System.out.println("JmeterFolder文件夹为空");
    					}
    				}
    			}
    		} else {
    			System.out.println("文件夹内容为空");
    		}
    	}
    }
    

      

  • 相关阅读:
    大数据-linux之大数据-shell位置参数变量
    大数据-linux之大数据-shell环境变量
    【httprunner】环境配置
    NOIP/CSP 普及组 历年复赛真题题单(1998~2020)
    【自动化测试中的自定义函数支持】方案+踩坑
    【转】nodejs npm安装教程2
    my read travel / nanjing 48 scenery / landscape
    OS + Windows 10 & Android shuangxitong
    OS + Windows10 on ARM / Windows 10 for arm
    OS + Centos df busy
  • 原文地址:https://www.cnblogs.com/xxsl/p/11355523.html
Copyright © 2020-2023  润新知