Java执行window cmd修改时间问题,谢谢
window 用户本身没有修改系统时间的权限
cmd下:
C:\Users\TEDA>date 05-20-2013
A required privilege is not held by the client.
通过程序将系统时间修改为三个月后时间,执行不报错,时间并未修改,但是程序并未捕获到异常,为什么呢?如何catch到没权限的异常,谢谢。
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class Test {
public final static String DEFAULTDATEPATTERN2 = "MM-dd-yyyy";
public final static SimpleDateFormat DEFAULTDATEFORMATTER2 = new SimpleDateFormat(DEFAULTDATEPATTERN2);
public static void main(String args[]) {
Calendar calendar = Calendar.getInstance();
// zero out the hours, minutes and seconds
calendar.set(Calendar.HOUR_OF_DAY, 0);
calendar.set(Calendar.MINUTE, 0);
calendar.set(Calendar.SECOND, 0);
calendar.set(Calendar.MILLISECOND, 0);
calendar.add(Calendar.MONTH, 3);
//Thread unsafe
String datestr=DEFAULTDATEFORMATTER2.format(calendar.getTime());
System.out.println(datestr);
Runtime rt = Runtime.getRuntime();
try {
rt.exec("cmd /C date " + datestr);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
proc = Runtime.getRuntime().exec(command);
BufferedReader isInfo = proc.getInputStream();
BufferedReader isError = proc.getErrorStream();