1、jdk 中java.util.zip压缩和解压 代码块
import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.util.zip.GZIPInputStream;
import java.util.zip.GZIPOutputStream;
public class GzipUtils {
/**
* @Description: 压缩
*/
public static byte[] gzip(byte[] data) throws Exception{
ByteArrayOutputStream bos = new ByteArrayOutputStream();
GZIPOutputStream gzip = new GZIPOutputStream(bos);
gzip.write(data);
gzip.finish();
gzip.close();
byte[] ret = bos.toByteArray();
bos.close();
return ret;
}
/**
* @Description: 解压
*/
public static byte[] ungzip(byte[] data) throws Exception{
ByteArrayInputStream bis = new ByteArrayInputStream(data);
GZIPInputStream gzip = new GZIPInputStream(bis);
byte[] buf = new byte[1024];
int num = -1;
ByteArrayOutputStream bos = new ByteArrayOutputStream();
while((num = gzip.read(buf, 0 , buf.length)) != -1 ){
bos.write(buf, 0, num);
}
gzip.close();
bis.close();
byte[] ret = bos.toByteArray();
bos.flush();
bos.close();
return ret;
}
public static void main(String[] args) throws Exception{
String readPath = System.getProperty("user.dir") + File.separatorChar + "sources" + File.separatorChar + "d.zip";
File file = new File(readPath);
FileInputStream in = new FileInputStream(file);
byte[] data = new byte[in.available()];
in.read(data);
in.close();
System.out.println("文件原始大小:" + data.length);
byte[] ret1 = GzipUtils.gzip(data);
System.out.println("压缩之后大小:" + ret1.length);
byte[] ret2 = GzipUtils.ungzip(ret1);
System.out.println("还原之后大小:" + ret2.length);
String writePath = System.getProperty("user.dir") + File.separatorChar + "receive" + File.separatorChar + "d.zip";
FileOutputStream fos = new FileOutputStream(writePath);
fos.write(ret2);
fos.close();
}
2、java获取系统属性
public class TestSystemProperty {
public static void main(String[] args) {
System.out.println("java版本号:" + System.getProperty("java.version"));
System.out.println("Java提供商名称:" + System.getProperty("java.vendor"));
System.out.println("Java提供商网站:" + System.getProperty("java.vendor.url"));
System.out.println("jre目录:" + System.getProperty("java.home"));
System.out.println("Java虚拟机规范版本号:" + System.getProperty("java.vm.specification.version"));
System.out.println("Java虚拟机规范提供商:" + System.getProperty("java.vm.specification.vendor"));
System.out.println("Java虚拟机规范名称:" + System.getProperty("java.vm.specification.name"));
System.out.println("Java虚拟机版本号:" + System.getProperty("java.vm.version"));
System.out.println("Java虚拟机提供商:" + System.getProperty("java.vm.vendor"));
System.out.println("Java虚拟机名称:" + System.getProperty("java.vm.name"));
System.out.println("Java规范版本号:" + System.getProperty("java.specification.version"));
System.out.println("Java规范提供商:" + System.getProperty("java.specification.vendor"));
System.out.println("Java规范名称:" + System.getProperty("java.specification.name"));
System.out.println("Java类版本号:" + System.getProperty("java.class.version"));
System.out.println("Java类路径:" + System.getProperty("java.class.path"));
System.out.println("Java lib路径:" + System.getProperty("java.library.path"));
System.out.println("Java输入输出临时路径:" + System.getProperty("java.io.tmpdir"));
System.out.println("Java编译器:" + System.getProperty("java.compiler"));
System.out.println("Java执行路径:" + System.getProperty("java.ext.dirs"));
System.out.println("操作系统名称:" + System.getProperty("os.name"));
System.out.println("操作系统的架构:" + System.getProperty("os.arch"));
System.out.println("操作系统版本号:" + System.getProperty("os.version"));
System.out.println("文件分隔符:" + System.getProperty("file.separator"));
System.out.println("路径分隔符:" + System.getProperty("path.separator"));
System.out.println("直线分隔符:" + System.getProperty("line.separator"));
System.out.println("操作系统用户名:" + System.getProperty("user.name"));
System.out.println("操作系统用户的主目录:" + System.getProperty("user.home"));
System.out.println("当前程序所在目录:" + System.getProperty("user.dir"));
}
}