丐版定时发送体温
作者:互联网
疫情期间,应公司要求需要每天发送体温,但是老忘(有时候在追剧或者打游戏)。于是,这个demo诞生了。
package QQWchat; import java.awt.AWTException; import java.awt.Robot; import java.awt.Toolkit; import java.awt.datatransfer.Clipboard; import java.awt.datatransfer.StringSelection; import java.awt.datatransfer.Transferable; import java.awt.event.KeyEvent; import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.Timer; import java.util.TimerTask; //不过需要自己打开微信窗口 public class QQWchattimer { private static long getRandom(int min, int max) { return Math.round(Math.random() * (max - min) + min); } public static void main(String[]args) { Calendar calendar = Calendar.getInstance(); /** * 指定触发的时间 现在指定时间为 2020年3月10号 14点 43 分 1 秒时触发 */ calendar.set(Calendar.MONTH, 3);//设置日期 这里10表示11月份 11就表示12月份,索引指示月份4=May calendar.set(Calendar.DAY_OF_MONTH,13);//设置日期为27号 calendar.set(Calendar.HOUR_OF_DAY, 16); //设置15点的时候触发 calendar.set(Calendar.MINUTE, 30); //设置43分钟的时候触发 calendar.set(Calendar.SECOND, 1); //设置第一秒的时候触发 Date time = calendar.getTime(); System.out.println("计划时间为:"+time+",还需手动打开窗口。设置完成,去玩游戏吧"); //Timer timer = new Timer(); //timer.schedule(new RemindTask(), time); Timer timer = new Timer(); timer.schedule(new TimerTask() { public void run(){ SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//设置日期格式 System.out.println(df.format(new Date()));// new Date()为获取当前系统时间 // String sentence = "everybody早上好,我是你们帅气又迷人的Kaspar哥哥,今天阳光明媚,今天多云转晴,当前时间为"+df.format(new Date())+",今晚早点睡觉,晚安、晚安";// 定义要发送的话 //way1 /* double [] arr = {36.1,36.8,36.9}; //自己填数不想写了 //产生0-(arr.length-1)的整数值,也是数组的索引 int index=(int)(Math.random()*arr.length); double rand = arr[index]; String sentence1=Double.toString(rand)+" ,"; System.out.println(sentence1); */ //way2 double b=getRandom(361, 369); String sentence=Double.toString(b/10)+" ,"; System.out.println(sentence); Robot robot = null; try { robot = new Robot(); } catch (AWTException e) { // TODO Auto-generated catch block e.printStackTrace(); }// 创建Robot对象 robot.delay(3000);// 延迟三秒,主要是为了预留出打开窗口的时间,括号内的单位为毫秒 Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard(); String[] authors = sentence.split("[,]");// 字符串根据,分割 for (int j = 0; j < 1; j++) {//循环次数 for (int i = 0; i < authors.length; i++) { String sentencet = authors[i]; Transferable tText = new StringSelection(sentencet); clip.setContents(tText, null); // for (int j = 1; j <= 1; j++) { // 以下两行按下了ctrl+v,完成粘贴功能 robot.keyPress(KeyEvent.VK_CONTROL); robot.keyPress(KeyEvent.VK_V); //这些键可以瞎鸡儿调 robot.keyRelease(KeyEvent.VK_CONTROL);// 释放ctrl按键,像ctrl,退格键,删除键这样的功能性按键,在按下后一定要释放,不然会出问题。crtl如果按住没有释放,在按其他字母按键是,敲出来的回事ctrl的快捷键。 robot.delay(1000);// 延迟一秒再发送,不然会一次性全发布出去,因为电脑的处理速度很快,每次粘贴发送的速度几乎是一瞬间,所以给人的感觉就是一次性发送了全部。这个时间可以自己改,想几秒发送一条都可以 robot.keyPress(KeyEvent.VK_ENTER);// 回车 // } } } } }, time); // }, 10000, 86400000);//10000表示延迟十秒执行,86400000表示24*60*60秒后也就是每天循环执行一次 } }
设置好时间,执行上面这个,打开需要的微信窗口。你就可以该干嘛干嘛去了。
标签:java,int,Calendar,体温,calendar,import,new,丐版,定时 来源: https://www.cnblogs.com/kaspar/p/12695664.html