如题 是否需要考虑 win 7 和xp  那能得到时间 那么如何修改时间呢掉 window api  如何改呀  做过的 说说把 

解决方案 »

  1.   

    java 获得本机时间 并修改时间
      

  2.   

    项目中建一个bat文件,java中调用这个bat……
      

  3.   

    一种办法使用命令,通过Java进程执行;另一种办法就是实现本地接口,调用操作系统修改时间API~
      

  4.   

    Calendar或者Date不是能取吗?
    要不调用dos命令吧
    import java.util.*;
    import java.io.*;
    public class Test {
        public static void main(String args) throws Throwable {
            Calendar c = Calendar.getInstance(); //用Calendar获取时间
            System.out.printf("%tT\n", c.getTime());        //用dos命令获取和设置本机时间
            Process p = Runtime.getRuntime().exec("cmd /c time /t"); //获取本机时间
            BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
            String buf = br.readLine(); 
            System.out.println(buf);        String time = "15:55:00";
            p = Runtime.getRuntime().exec("cmd /c time " + time); //设置本机时间
        }
    }如果是win7,cmd窗口要用管理员身份启动,然后在cmd窗口执行
    javac Test.java
    java Test
      

  5.   

    能获得 年月日吗  我进入cmd 了 可以呀直接 time  查看的 没用什么 管理员呀
      

  6.   

    年月日用date命令
    import java.util.*;
    import java.io.*;
    public class Test {
        public static void main(String args) throws Throwable {
            Calendar c = Calendar.getInstance(); //用Calendar获取时间
            System.out.printf("%tF\n", c.getTime());        //用dos命令获取和设置本机时间
            Process p = Runtime.getRuntime().exec("cmd /c date /t"); //获取本机时间
            BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
            String buf = br.readLine(); 
            System.out.println(buf);        String date = "2011/12/02";
            p = Runtime.getRuntime().exec("cmd /c date " + date); //设置本机时间
        }
    }
      

  7.   


    那就各个命令分别调用
    import java.util.*;
    import java.io.*;
    public class Test {
        public static void main(String args) throws Throwable {
            Calendar c = Calendar.getInstance(); //用Calendar获取时间
            System.out.printf("%tF\n", c.getTime());
            System.out.printf("%tT\n", c.getTime());        //用dos命令获取和设置本机时间
            String buf;
            BufferedReader br;
            Process p;
            String[] cmd = {"cmd /c date /t", "cmd /c time /t"};
            for (String s : cmd) { //分别调用各个命令取时间
                p = Runtime.getRuntime().exec(s); //获取本机时间
                br = new BufferedReader(new InputStreamReader(p.getInputStream()));
                while ((buf=br.readLine()) != null) { 
                    System.out.println(buf);
                }
            }        String date = "2011/12/02";
            String time = "22:35:30";
            cmd = new String[] {"cmd /c date " + date, "cmd /c time " + time};
            for (String s : cmd) { //分别调用各个命令设置时间
                p = Runtime.getRuntime().exec(s); //设置本机时间
            }
        }
    }
      

  8.   

    把两个命令串连起来调用也可以
    import java.util.*;
    import java.io.*;
    public class Test {
        public static void main(String args) throws Throwable {
            Calendar c = Calendar.getInstance(); //用Calendar获取时间
            System.out.printf("%tF\n", c.getTime());
            System.out.printf("%tT\n", c.getTime());        //用dos命令获取和设置本机时间
            String buf;
            BufferedReader br;
            Process p;
            String cmd = "cmd /c date /t & cmd /c time /t";
            p = Runtime.getRuntime().exec(cmd); //获取本机时间
            br = new BufferedReader(new InputStreamReader(p.getInputStream()));
            while ((buf=br.readLine()) != null) { 
                System.out.println(buf);
            }        String date = "2011/12/02";
            String time = "21:45:30";
            cmd = "cmd /c date " + date + " & cmd /c time " + time;
            p = Runtime.getRuntime().exec(cmd); //设置本机时间
        }
    }
      

  9.   

    10L的dos命令相当纯熟啊,学习下