程序员七夕情人节表白代码
MainClass:com.wujinxi.ShowLove
package com.wujinxi;
import java.awt.*;
import java.awt.datatransfer.StringSelection;
import java.awt.event.KeyEvent;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.Random;
/**
* @Author: Cool_Wu
* @Date: 2020-08-23 12:07
*/
public class ShowLove {
public static void main(String[] args) {
//打开记事本
Runtime rt = Runtime.getRuntime();
try {
rt.exec("notepad");
} catch (IOException e) {
e.printStackTrace();
}
//开启播放音乐线程
Thread t = new Thread(() -> {
//测试时资源文件路径填绝对路径
//打包时填资源文件名,资源文件和打包好的jar包放在同级目录下
MusicUtil.playMusic("love.mp3");
});
t.start();
//主线程休息一下,等待音乐氛围烘托起来
try {
Thread.sleep(3666);
} catch (InterruptedException e) {
e.printStackTrace();
}
//记事本开始读写内容
//测试时资源文件路径填绝对路径love
//打包时填资源文件名,资源文件和打包好的jar包放在同级目录下
readAndWrite("love.txt");
}
//读写文件方法
private static void readAndWrite(String path){
FileReader fr = null;
try {
//读取文件
fr = new FileReader(new File(path));
int i = 0;
//一个字符一个字符的读到内存中
while ((i = fr.read()) != -1){
//System.out.println((char)i);
//调用写入方法开始,一边读一边写
copyAndPaste(String.valueOf((char)i));
}
} catch (IOException e) {
e.printStackTrace();
}
}
//使用复制粘贴的方式模拟写入方法
private static void copyAndPaste(String str) {
StringSelection ss = new StringSelection(str);
//打开剪切板,传入参数,实现剪切复制
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(ss,ss);
//模拟Ctrl+V,实现粘贴功能
Robot robot = null;
try {
robot = new Robot();
} catch (AWTException e) {
e.printStackTrace();
}
//模拟按下Ctrl键
robot.keyPress(KeyEvent.VK_CONTROL);
//模拟按下V键
robot.keyPress(KeyEvent.VK_V);
//模拟松开V键
robot.keyRelease(KeyEvent.VK_V);
//模拟松开Ctrl键
robot.keyRelease(KeyEvent.VK_CONTROL);
//计算机执行速度快,保证程序正常运行,每次读写完毕休息一下,避免出现剪切板打开失败异常。
//同时使用休息时间为随机数,模拟出正常打字的场景效果
Random random = new Random();
int time = random.nextInt(300);
//避免取得的随机数太小,达不到效果
if (time < 168){
time += 132;
}
robot.delay(time);
}
}
播放音乐的工具类:com.wujinxi.MusicUtil
package com.wujinxi;
import javazoom.jl.player.Player;
import java.io.File;
import java.io.FileInputStream;
/**
* @Author: Cool_Wu
* @Date: 2020-08-23 12:13
*/
//播放音乐工具类
public class MusicUtil {
//播放音乐的方法
public static void playMusic(String path){
try {
Player player = new Player(new FileInputStream(new File(path)));
player.play();
} catch (Exception e) {
e.printStackTrace();
}
}
}
工具类需要导入的jar包(新建一个lib文件夹放入jar包):
- jlayer-1.0.1.jar
参数需要的资源文件(背景音乐、文字内容自己花心思弄一下):
- love.txt
- love.mp3
love.txt示例:
♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡
♡与你一见如故,是我今生最美丽的相遇♡
♡与你一诺相许,是我素色年华里最永恒的风景♡
♡
♡一直想说,无论走到哪里,最想去的是你的身边♡
♡
♡我相信我们可以一起,等青丝变白发♡
♡
♡你在,我在,就是海枯石烂♡
♡
♡亲爱的,你知道吗,哪怕遍体鳞伤,我仍有爱你的余力♡
♡
♡生活就像是包饺子,不管你是什么馅,我都会紧紧的把你包在我心里♡
♡任生活的沸水怎样煮,都磨不掉我对你的爱♡
♡
♡落一笔长相思,挥洒多少痴情泪,饮一杯浊酒,品了多少世间情♡
♡如你是我的的莲花,那么今生让我为你守一世长情♡
♡
♡我想爱一个人,就是抛弃一切,唯愿与她相守的决心♡
♡
♡爱,没有理由,缘于内心悸动,情,没有借口,缘于千次回眸♡
♡
♡爱很简单:一个你,一心一意♡
♡
♡我能想到最浪漫的事,就是和你一起慢慢变老♡
♡
♡虽然你不是最好的,但却是我独一无二,唯一深爱的♡
♡
♡花儿虽多,却没有重复的一朵,但愿你是我生生世世早已注定的♡
♡
♡喜欢你的人很多,不缺我一个,但我爱的人很少,只有你一个♡
♡
♡只为一人,终其一生,天涯海角,唯愿君安♡
♡
♡恋你每一天,爱你每一时,想你每一刻,念你每一分,愿上天成全我们此一世♡
♡
♡你的过去我来不及参与,你的未来我奉陪到底♡
♡
♡一生情缘,只为伊人而憔悴♡
♡
♡爱,并没有那么深奥,能相依相伴就是最大的幸福♡
♡
♡因为你,我相信真爱,因为你,我相信永远♡
♡
♡你的所在之处,即不得不是我思念的天涯海角♡
♡
♡我会用我的一颗真心,一世的时间陪着你,守护你♡
♡
♡今生唯一的吝啬,就是你是我的♡
♡
♡想着我的未来有你在,其他一切都不怕了♡
♡
♡2020有你相伴,我相信我们定然不惧风雨♡
♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡♡