我想在这里提出要求:How to open a file without saving it to disk但是有文字。
据我所知,打开一个文件而不将其保存在磁盘上的某个地方是不可能的,也许是临时文件。
我想问另一种方法是否可行。
另一种方法: 1.创建String,2。将其复制到剪贴板,3。打开文本编辑器,4。将String粘贴到编辑器中。
步骤1,2,3没问题。第4步可以完成吗?
一个想法:在Windows中,可以从java应用程序运行一个bat文件,该文件将粘贴到记事本中。但我更喜欢只用java和平台无关的东西。
答案 0 :(得分:0)
可以完成第4步。一种方法是使用Robot并模仿CTRL + V命令,如下所示:
Robot robot = new Robot();
// For platform independence:
int ctrlOrCmdKey = -1;
if(System.getProperty("os.name").toLowerCase().contains("mac")) {
ctrlOrCmdKey = KeyEvent.VK_META;
} else {
ctrlOrCmdKey = KeyEvent.CTRL_MASK;
}
robot.keyPress(ctrlOrCmdKey);
Thread.sleep(10);
robot.keyPress(KeyEvent.VK_V);
Thread.sleep(10);
robot.keyRelease(KeyEvent.VK_V);
Thread.sleep(10);
robot.keyRelease(KeyEvent.CTRL_MASK);
如果您正在尝试将数据发送到您正在创建的其他应用程序,您还可以使用PipedInputStream / PipedOutputStream或使用本地主机Web套接字来使用IP协议(这可能不是很干净,但可能)