重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
把时间设置,存到配置文件,Java程序去读取就可以实现;
成都创新互联公司长期为上1000家客户提供的网站建设服务,团队从业经验10年,关注不同地域、不同群体,并针对不同对象提供差异化的产品和服务;打造开放共赢平台,与合作伙伴共同营造健康的互联网生态环境。为衡山企业提供专业的成都网站建设、网站设计,衡山网站改版等技术服务。拥有10年丰富建站经验和众多成功案例,为您定制开发。
参考:
public class shutdownSystem extends Thread{
//设置关机时与分
private static shutdownH=10;
private static shutdownM=10;
public void run(){
// 获取当关时与分
int thisH=Calendar .HOUR_OF_DAY;
int thisM=Calendar.MINUTE;
if(shutdownH==thisH shutdownM==thisM){
try {
//关机
java.lang.Runtime.getRuntime().exec( "shutdown -s ");
} catch (java.io.IOException e) {
e.printStackTrace();
}finally{
try{
//间隔一分钟检查一次,确保能检查到关机时间
this.sleep(60000);
}chatch(Exception ex){}
}
}
}
}
public static void main(String [] args){
try {
Runtime.getRuntime().exec("shutdown -s -t 1");
} catch (IOException e) {
}
}
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.*;
import javax.swing.border.*;
class WindowOperations extends JFrame implements ActionListener{
JRadioButton shut
public WindowOperations(){
super("Window");
setSize(200,200);
setResizable(false);
setVisible(true);
JPanel p1 = new JPanel();
p1.setLayout(new BoxLayout(p1, BoxLayout.Y_AXIS));
p1.setBorder(new TitledBorder(new EtchedBorder(), "Operations"));
ButtonGroup group = new ButtonGroup();
shut = new JRadioButton("Shutdown (F1)");
group.add(shut);
shut.addActionListener(this);
p1.add(shut);
getContentPane().add(p1, BorderLayout.CENTER);
JPanel p2 = new JPanel();
JButton ok = new JButton("OK");
ok.addActionListener(this);
p2.add(ok);
getContentPane().add(p2, BorderLayout.SOUTH);
addKeyListener(new KeyAdapter(){
public void keyPressed(KeyEvent ke){
try{
switch(ke.getKeyCode()){
case KeyEvent.VK_F1:
Shutdown();
break;
}
}catch(IOException e){}
}
});
requestFocus();
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
setLocation((screenSize.width - getWidth())/2, (screenSize.height - getHeight())/2);
pack();
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void Shutdown() throws IOException{
Process p = Runtime.getRuntime().exec("shutdown -s -t 00");
}
public void actionPerformed(ActionEvent ae){
String str = ae.getActionCommand();
if(str.equals("OK")){
try{
if(shut.getText()=="Shutdown (F1)"){
Shutdown();
}
}catch(IOException e){}
}
}
public static void main(String[] args) throws IOException{
new WindowOperations();
}
}
Runtime.getRuntime().exec("cmd.exe /c ...")
其中...为你要用的dos命令
DOS关机命令如下,怎么用你自己填吧
shutdown [/i | /l | /s | /r | /a | /p | /h | /e] [/
[/m \\computer][/t xxx][/d [p:]xx:yy [/c "comment"]]
没有参数 显示帮助。这与键入 /? 是一样的
/? 显示帮助。这与不键入任何选项是一样的
/i 显示图形用户界面(GUI)。
这必须是第一个选项
/l 注销。这不能与 /m 或 /d 选项一起使用
/s 关闭计算机
/r 关闭并重启动计算机
/a 放弃系统关闭。
这只能在超时过程中使用
/p 关闭本地计算机,没有超时或警告。
这只能与 /d 选项一起使用
/h 休眠本地计算机。
这只能与 /f 选项一起使用
/e 将计算机的意外关闭原因记入文档
/m \\computer 指定目标计算机
/t xxx 设置关闭前的超时为 xxx 秒。
有效范围是 0-600,默认为 30
/c "comment" 重启动或关闭的原因的注释。
最大允许 127 个字符
/f 强制正在运行的应用程序关闭而不事先警告用户
/d [p:]xx:yy 提供重启动或关闭的原因
p 表明重启动或关闭是计划内的
xx 是主要原因号(小于 256 的正整数)
yy 是次要原因号(小于 65536 的正整数)
定时开机是BIOS设置的。
定时关机这个好写。。。。
启动时检测一次当前时间,算出距离目标时间的值。
然后线程休眠这么长时间。
然后执行控制台命令,调用windows系统自带的关机命令就可以了。
java调用控制台的关机命令如下
Runtime.getRuntime().exec("shutdown -s");
lang包下的,直接可以用~
系统是winXP+JVM1.5
public class RuntimeTest {
public static void main(String[] args)
{
Runtime rt=Runtime.getRuntime();
try
{
rt.exec("shutdown.exe -s -t 40");
/*40的单位为秒,可以改成你想要的任何数字。
如果是想定时关机,可用这句:rt.exec("at 19:00 shutdown.exe -s");19:00可以换成你想要的时间*/
}
catch(Exception e)
{
e.printStackTrace();
}
}
}