记一次Java利用cmd命令调用WinRAR压缩文件-压缩文件
前言
最近在和一个档案管理系统对接,需要把我方系统文件压缩成zip格式,通过ftp的方式upload到指定的服务器上,考虑到Java的平台无关性,一开始便使用Java自带的类库java.util.zip来实现文件的压缩,谁曾想传送过去的压缩文件对方系统解析出错。于是只能改用cmd命令调用WinRAR的方式来实现,敌方程序员完美的破坏了Java的可移植性!!
调用cmd命令
废话说了那么多,下面直接上菜:
/**
* <p>Description: 调用本地压缩工具进行压缩</p>
* @param zipFilePath 文件压缩后的存放路径
* @param sourceFilePath 源文件路径
* @return
* @date 2019年2月26日
* @author 怪蜀黍
*/
public String compressFile(String zipFilePath, String sourceFilePath) {
File file = new File(sourceFilePath);
final String cmd = "D:\\Program Files\\WinRAR\\WinRAR.exe"+" a -ibck -ep1 "+zipFilePath+" ";
Process proc = null;
if (file.isDirectory()) {
File[] files = file.listFiles();
for (int i = 0; i<files.lengt ; i++) {
try {
proc = Runtime.getRuntime().exec(cmd+files[i]);
// waitFor将返回exitValue的值0表示正常结束
if (proc.waitFor() != 0)
return ;
} catch (Exception e) {
System.out.println("压缩失败!");
}
}
}
return "";
}
我这里WinRAR的安装路径为:D:\Program Files\WinRAR\WinRAR.exe,a表示添加文件到压缩文件,-ibck表示后台运行,-ep1表示排除基本目录。其他命令参数可自行百度。
根据实际需求,文件压缩后,点开压缩包要如下图的形式,所以我这里使用了一个for循环,将文件或文件夹一个个的压缩到压缩包里面。
展望
个人水平有限,如有不妥望指正。解压也基本类似,查一查WinRAR的命令参数了解一下即可,此处不再复述。
相关内容
-
利用空中飞人效果联想家用电脑销售暑促
利用空中飞人效果联想家用电脑销售暑促,,近一个月的战斗后,家用...
-
wps填充公式|WPS里快速填充调用公式
wps填充公式|WPS里快速填充调用公式,填充,公式,wps,1.WPS里怎...
-
cad逐点标注快捷键|cad的逐点标注命令
cad逐点标注快捷键|cad的逐点标注命令,,cad的逐点标注命令工具...
-
cad快捷键命令|cad快捷键命令大全标注
cad快捷键命令|cad快捷键命令大全标注,,cad快捷键命令大全标注...
-
矩形cad快捷键|CAD矩形命令快捷键
矩形cad快捷键|CAD矩形命令快捷键,,CAD矩形命令快捷键CAD软件...
-
cad重复复制快捷键|cad连续复制快捷键命令
cad重复复制快捷键|cad连续复制快捷键命令,,1. cad连续复制快...
-
cmd命令快捷键|cmd快捷键大全
cmd命令快捷键|cmd快捷键大全,,cmd快捷键大全首先介绍第一种方...
-
cad布局常用快捷键|cad布局常用快捷键命令
cad布局常用快捷键|cad布局常用快捷键命令,,1. cad布局常用快...
-
cad平面设备快捷键|cad机械设计常用快捷键命令
cad平面设备快捷键|cad机械设计常用快捷键命令,,1. cad机械设...
-
电脑计算器命令|电脑计算器命令怎么用
电脑计算器命令|电脑计算器命令怎么用,,1. 电脑计算器命令怎么...
-
cad修改快捷键的命令|cad修改快捷键的命令大全
cad修改快捷键的命令|cad修改快捷键的命令大全,,cad修改快捷键...
-
电脑系统的启动服务项|启动系统服务命令
电脑系统的启动服务项|启动系统服务命令,,启动系统服务命令这...
-
联想垫a2207如何调用a2207平板评价
联想垫a2207如何调用a2207平板评价,,联想a2207垫在1600 3G双网...
-
cad等分命令快捷键|cad快速等分快捷键
cad等分命令快捷键|cad快速等分快捷键,,1. cad快速等分快捷键1...
-
cad旋转命令快捷键|cad图形旋转快捷键命令
cad旋转命令快捷键|cad图形旋转快捷键命令,,cad图形旋转快捷键...