Java - Change System time automatically

1. Windows command "date" and "time" can change system time.

2. Run OS command in java

/**
 * Created by learner on 2005-06-07.
 */
import java.io.IOException;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Calendar;

/**
 * This class changes the system date five days forword automatically
 * every 90 seconds. The system time is 500 days forward when the
 * program is terminated. 
 */
public class DateModification {

    private static final int DATE_INTERVAL = 5;
    private static final String WIN_PATH = "/C";
    private static final String COMMAND = "date";
    private static final String DATE_FORMAT = "yyyy-MM-dd";

    public void setSystemTime() {
        String cmdArgValue = null;
        String[] commandLine = null;

        SimpleDateFormat simpleDateFormat = new SimpleDateFormat(DATE_FORMAT);

        Calendar rightNow = null;
  Date dateNow = null;
  Date dateLater = null;
  Process process = null;
  
  for (int i=0; i<100; i++) { 
  
   rightNow = Calendar.getInstance();
         dateNow = rightNow.getTime();
         dateLater = new Date();
       
         // Three days later.
         dateLater.setTime(
            dateNow.getTime() + 1000 * 60 * 60 * 24 * DATE_INTERVAL);

         cmdArgValue = new String(simpleDateFormat.format(dateLater).toString());
         System.out.println(cmdArgValue);

         try {
             commandLine = new String[4];
             commandLine[0] = "cmd.exe";
             commandLine[1] = WIN_PATH;
             commandLine[2] = COMMAND;
             commandLine[3] = cmdArgValue;
           
             // Sleep for 90 seconds.   
    Thread.currentThread().sleep(90000);

             process = Runtime.getRuntime().exec(commandLine);

             /*

            Process p= Runtime.getRuntime().exec(

                     "cmd.exe  /c  start  http://www.cityforest.com");  //Access website


            Process p= Runtime.getRuntime().exec("cmd.exe  /c  start  ping 10.144.98.100");  //Ping

           */
         } catch (IOException ioe) {
             System.out.println(ioe.getMessage());
         } catch (InterruptedException ie) {
    System.out.println(ie.getMessage());
      } catch (Exception e) {
       System.out.println(e.getMessage());
      }
  }

    }

    public static void main(String args[]) throws Exception {
        new DateModification().setSystemTime();
    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值