导航:首页 > 编程语言 > java批处理文件

java批处理文件

发布时间:2023-08-28 12:42:58

‘壹’ 如何用批处理,启动java的.class文件

建立一个内容为下面格式的bat文件即可了(具体内容需要依照你的情况修改):

前两行是dos命令,用于进入你的class文件所在的文件夹(假设在c:\myjava\中)
path 那行是jdk 的bin文件夹
CLASSPATH那行是运行你的java class所需要的其他辅助的类的文件夹或者jar文件。
xxx是你的java类的完整运行路径(如果在package中,需要加上package,如 java tool.MyTool,tool为package)

c:
cd c:\myjava\
set path=c:\j2sdk1_4_2_08\bin;
set CLASSPATH=.;C:\j2sdk1_4_2_08\lib\tools.jar;
java xxx

‘贰’ 如何把java中的项目做成批处理

这是我一个真实的项目。发布批处理程序,结构目录如下:

data文件存放数据,etc存放配置文件,lib,存放项目jar包,startup.bat/startup.sh启动脚本。



1、-----windows上.bat文件调用java程序。bat文件内容如下------

echooff

remsetupclasspath

echoset_CP=%%_CP%%;%%1>cp.bat

set_CP=.;classes;"%JAVA_HOME%libdt.jar";"%JAVA_HOME%lib ools.jar"

for%%iin(lib*.jar)docallcp.bat%%i

setCLASSPATH=%_CP%

delcp.bat

echo%CLASSPATH%

remsetJAVA_HOME=

setJAVA_OPTION=-Dfile.encoding=GBK-Xms256m-Xmx256m-XX:MaxPermSize=64m

setRUN_CLASS=batch.Main

"%JAVA_HOME%injava"%JAVA_OPTION%-classpath%CLASSPATH%%RUN_CLASS%


2、-------unix/linux上shell调用java程序,shello文件内容如下---------

if[-z${JAVA_HOME}]

then

echo"JAVA_HOMEnotsetyet,can'trunjavaprogram!"

exit-1

fi

CLASSPATH=.:${JAVA_HOME}/lib/tools.jar:${JAVA_HOME}/lib/dt.jar

JLIBDIR=./lib

exportJLIBDIR

forLLin`ls${JLIBDIR}/*.jar`

do

CLASSPATH=${CLASSPATH}:${LL}

done

echo${CLASSPATH}

exportCLASSPATH

JAVA_OPTION="-Dfile.encoding=GBK-Xms256m-Xmx256m-XX:MaxPermSize=64m"

RUN_CLASS=batch.Main

${JAVA_HOME}/bin/java${JAVA_OPTION}-classpath${CLASSPATH}${RUN_CLASS}


‘叁’ java编程 批处理

import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Stack;

public class CheckFilebatch {
private static final String LOG_FILE = "F:/CheckFilebatch.log"; //报错的信息写在这个文件里。
private static final String FILE_HOME = "F:/niceStore /"; //要操作的物理目录

public static void main(String[] args) {
try {
ArrayList<String> fileListInDB = new ArrayList<String>();
FileWriter fw = new FileWriter(LOG_FILE);

// TODO
// 取得DB连接,执行sql“SELECT DISTINCT FILEPATH FROM ARR-FILE”,得到一个ResultSet
// 从DB中取出文件信息,放入fileListInDB 中,
ResultSet rs = null;
while (rs.next()) {
String path = rs.getString("File_Column");
File f = new File(path);
if (!f.exists()) {
// 不合法的报出错误信息。
System.out.println("file not exists: " + path);
fw.write("file not exists: " + path + "\n");
} else {
// 合法的,转化为路径名的规范路径名字符串,加入到fileListInDB中
fileListInDB.add(f.getCanonicalPath());
}
}
rs.close();
//
fw.write("\n\n\n\n");

//下面开始遍历物理目录
File home = new File(FILE_HOME);
Stack<File> tmpStack = new Stack<File>();
tmpStack.add(home);
while (!tmpStack.isEmpty()) {
File tmp = tmpStack.pop();
File[] childs = tmp.listFiles();
for (int i = 0; i < childs.length; i++) {
File child = childs[i];
if (child.isDirectory()) {
tmpStack.push(child);
} else {
if (fileListInDB.contains(child.getCanonicalPath())) {
fileListInDB.remove(child.getCanonicalPath());
} else {
// 删除文件。
child.delete();
// 这里的操作如果把它移动到另一个目录里,作为备份,更好些。
fw.write("delete file: " + child.getCanonicalPath());
}
}
}
}
// 这个程序只考虑文件,不考虑目录
fw.close();
} catch (SQLException e) {
e.printStackTrace();
} catch (IOException e1) {
e1.printStackTrace();
}

}
}

‘肆’ 如何用java或者批处理命令 实现解压一个rar或zip文件 到选择的目录下 并生成桌面快捷方式

/**
* 解压课件包中的某个课件
* @param zipFilePath 课件包路径
* @param outDirPath 输出目录路径
* @return 解压出来文件的绝对路径,失败返回null
* @throws IOException
*/
public String decompressAllFileToDir(String zipFilePath, String outDirPath) throws IOException {
ZipFile zip = new ZipFile(zipFilePath, "GBK");

@SuppressWarnings("unchecked")
Enumeration<ZipEntry> entries = zip.getEntries();
if (entries == null) {
return null;
}
java.io.File file = new java.io.File(outDirPath);
String path = file.getAbsolutePath();
file.mkdirs();
if (file.isFile()) {
return null;
}
while(entries.hasMoreElements())
{
ZipEntry entry = entries.nextElement();
String nameInZip = entry.getName().substring(entry.getName().lastIndexOf("/")+1);
InputStream is = zip.getInputStream(entry);
java.io.File tempFile = new java.io.File(nameInZip);
FileOutputStream fos = new FileOutputStream(new StringBuilder(path).append("/").append(tempFile.getName()).toString());
byte[] bytes = new byte[MAX_BUFFER];
int size = 0;
while ((size = is.read(bytes)) != -1) {
fos.write(bytes, 0, size);
}
}

return zipFilePath;
}

‘伍’ java 调用批处理文件或可执行文件

用我这种方法就可以用java调用你想调用的程序,不管是exe,还是bat
public class Invoke {

/**
* @param args
*/
public static void main(String[] args) throws Exception{
// TODO Auto-generated method stub
Process process = Runtime.getRuntime().exec("c:/cmd.bat");

}

}

.bat里面写入

C:\\hp\\飞秋FeiQ.exe//这个路径就是你应用程序的路径

就可以运行 了,具体思路是相当于你在cmd里面直接输入C:\\hp\\飞秋FeiQ.exe 应该满意 了嘛

阅读全文

与java批处理文件相关的资料

热点内容
运维程序员脚本 浏览:369
塑源码燕窝的安全性 浏览:174
作业调度采用高响应比优先调度算法 浏览:160
和平精英如何切换苹果到安卓 浏览:530
数据库调用表单的命令 浏览:920
程序员技能大赛 浏览:9
什么app买品牌衣服 浏览:13
手机看世界名着哪个app好 浏览:493
运行命令切换打印机用户 浏览:919
android滑动button 浏览:939
服务器日志可以干什么 浏览:644
安卓系统空间怎么清理软件 浏览:343
维也纳pdf 浏览:641
加密货币交易所哪个最好 浏览:816
linux的现状 浏览:926
命令与征服叛逆者修改器 浏览:246
怎么用ios玩安卓全民枪战 浏览:668
程序员入行前后的头发 浏览:711
嵌入式图像算法 浏览:329
服务器如何访问服务器失败 浏览:875