java - 如何访问本地机器的temp目录

标签 java swing jfilechooser tempdir

我正在开发一个需要打开附件的应用程序。我需要点击“打开”按钮并打开一个 pdf 文件。我的方法是从服务器获取内容并将其写入临时目录上的某个位置。

但是,当我尝试从远程计算机访问此服务时, http://myserverIP:port/openMyAttachment ,它访问 myserverIP 的临时目录而不是本地计算机。然后它会打开 myserverIP 上的文件。

我使用以下代码来获取临时目录:

    String tmp = System.getProperty("java.io.tmpdir");      
    JFileChooser fc = new JFileChooser();
    FileSystemView fsv = fc.getFileSystemView();
    File f = fsv.getDefaultDirectory();
    String dir = f.getAbsolutePath();
    String strDirectory = "temp~" + f.separator;

有人可以分享一下你的想法吗?如何访问本地计算机上的临时目录并将文件写入本地计算机?

最佳答案

您尝试在服务器上执行的操作过多。如果您有一个本地运行的 Java 程序,那么它应该显示 JFileChooser,然后获取文件,将其写入本地临时空间,然后显示它。服务器应该做的唯一一件事就是提供一个InputStream来从中获取文件内容。如果您将服务器更改为具有 getAttachment 查询(或其他内容),而不是仅返回 pdf 文件的 openMyAttachment 查询。然后您应该能够使用 URLConnection 获取它并在本地计算机上完成工作。

关于java - 如何访问本地机器的temp目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29311830/

相关文章:

java - JFileChooser 和复制文件

java - JFilechooser外观

java - 奇怪的JFileChooser情况,右键菜单文本为空白

java - 从其 Activity 外部定位按钮

java - 一键执行两项操作

java 无法保留一个实体,可能是因为 boolean 字段

java - 如何在 JTextComponent 中只输出小数点后一定数量的数字?

java - JList 不显示 JScrollpane 或更改大小

java - 将 JScrollPane 添加到 JList

java - 分解字符串并将其组成数组