2020-12-20----java表白
目录
- 自动打开记事本
- 向记事本中填充文字
- 打包运行
- 注意
自动打开记事本
runtime
单例模式
向记事本中填充文字
使用字符流将文件中的内容读取到內存之后
将读取数据放入剪切板中,然后粘贴到文件中
// A code block
package com.bjpowernode;import javazoom.jl.decoder.JavaLayerException;
import javazoom.jl.player.Player;import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;/*** 播放音乐*/
public class MusicUtil {public static void play(String path) {try {//相当于是将音乐文件放到播放器中Player player = new Player(new FileInputStream(new File(path)));//播放player.play();} catch (JavaLayerException e) {e.printStackTrace();} catch (FileNotFoundException e) {e.printStackTrace();}}
}
// A code block
package com.bjpowernode;import java.awt.*;
import java.awt.datatransfer.StringSelection;
import java.awt.event.KeyEvent;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Random;public class ShowLove {public static void main(String[] args) throws IOException {//打开记事本 使用了单例模式Runtime rt = Runtime.getRuntime();rt.exec("notepad");//开启线程播放音乐Thread t = new Thread(()->{//播放音乐MusicUtil.play("D:\\Desktop\\ssm\\ssm\\festival\\love\\text\\song.mp3");});t.start();//延时try {Thread.sleep(2000);} catch (InterruptedException e) {e.printStackTrace();}//读取文件readFile("D:\\Desktop\\ssm\\ssm\\festival\\love\\text\\my.txt");}/*** 读取文件* @param path 文件的路径*/public static void readFile(String path) {//使用字符流读取文件中的内容//自动关闭 try with resourcestry (FileReader fr = new FileReader(path)) {int c;while ((c = fr.read()) != -1) {copyAndPaste(String.valueOf((char)c));}} catch (FileNotFoundException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}/*** 将数据放到剪切板中,粘贴到记事本中* @param str*/public static void copyAndPaste(String str) {//ctrl c//使用StringSelection对象将字符串放入StringSelection stringSelection = new StringSelection(str);//ToolKit将数据放到剪切板中Toolkit.getDefaultToolkit().getSystemClipboard().setContents(stringSelection,stringSelection);//ctrl v//模拟键盘的输入和鼠标的操作Robot robot = null;try {robot = new Robot();} catch (AWTException e) {e.printStackTrace();}//按下ctrl vrobot.keyPress(KeyEvent.VK_CONTROL);robot.keyPress(KeyEvent.VK_V);//释放robot.keyRelease(KeyEvent.VK_V);robot.keyRelease(KeyEvent.VK_CONTROL);Random r = new Random();int delay = r.nextInt(200);if (delay < 100) {delay += 100;}//延时robot.delay(delay);}}
打包运行
注意
在运行的时候,如果出现cannot open clipboard ,解决方式
链接: .
发布评论