您可以在系统剪贴板上创建文件,但不能在目录中创建文件



当用户单击按钮时,我想生成文件并将其添加到系统剪贴板。我已经能够做到这一点,但是当文件添加到系统剪贴板时,它还会在项目文件夹中生成文件(我正在使用 Eclipse(。我可以直接在系统剪贴板上制作它而不让它显示在目录中吗?

当我制作文件时,这是我使用的代码:

File file = new File("file.txt");

是否应将"file.txt"替换为系统剪贴板的路径?还是不可能?

        StringSelection sel = new StringSelection(<insert string here>);
        Clipboard clip = Toolkit.getDefaultToolkit().getSystemClipboard();
        clip.setContents(sel, sel);

您可以查看此内容以进行字符串选择 http://docs.oracle.com/javase/8/docs/api/java/awt/datatransfer/StringSelection.html

不要在项目的路径中创建文件。您知道,当您使用以下语句创建文件时:

File file = new File("file.txt");

它是在代码的类文件附近创建的。

只需使用类 FilecreateTempFile 静态方法创建一个临时文件:

try {
        File f = File.createTempFile("file", ".txt");
        FileWriter wr = new FileWriter(f);
        wr.write("This is a Test!");
        wr.close();
        // Add it to clipboard here 
    } catch (IOException e) {
        e.printStackTrace();
    }

祝你好运

最新更新