簡體   English   中英

在java中創建臨時文件夾

[英]Creating temp Folder in java

我需要創建一個臨時文件夾,我可以在其中放置一些臨時文件進行處理。 我不確定我是否會在我的應用程序jar執行的文件夾中具有讀/寫訪問權限。

  1. 是否最好在系統的臨時目錄中創建臨時文件夾?
  2. 當我使用File tempFolder = File.createTempFile("fooo",""); 文件夾在哪里創建? 當我進入我的mac中的臨時文件夾時,我無法通過名稱fooo看到文件夾。

你幾乎完成了創建tempfolder,看到這個:

import java.io.File;
import java.io.IOException;

public class TempFolder {
    public static void main(String[] args) throws IOException {
        File file = File.createTempFile("my_prefix", "");
        System.out.println(file.getAbsolutePath() + " isFile: " + file.isFile() + " isDir:" + file.isDirectory());
        file.delete();
        file.mkdir();
        System.out.println(file.getAbsolutePath() + " isFile: " + file.isFile() + " isDir:" + file.isDirectory());
    }
}

首先,createTempFile將為您創建一個真實的文件,只需刪除它並使用相同的名稱創建一個目錄。

我也使用osx。 我的結果是:

/var/folders/aQ/aQLNlFLOF28xewK2A7i0X++++TM/-Tmp-/my_prefix8720723534029791962 isFile: true isDir:false
/var/folders/aQ/aQLNlFLOF28xewK2A7i0X++++TM/-Tmp-/my_prefix8720723534029791962 isFile: false isDir:true

您應該使用File.createTempFile()

它的創建取決於您的環境。 如果您有興趣,請嘗試打印出這樣一個文件的完整路徑。

在我的Mac(10.8.2)上,系統Java剛才在“/ var / folders / qj / v2cqt0t91h1b4rzj1s0pc_780000gp / T /”中創建了一個文件。

當您調用File tempFolder = File.createTempFile("fooo","") ,它將返回一個File對象。 然后你可以打電話

tempFolder.getAbsolutePath();

鏈接在這里

這將給你的位置。 猜測我會說它在/ tmp /你可以從Finder進入

  • 選擇轉到文件夾
  • 從Go菜單中輸入/ tmp /

這將帶您進入隱藏的文件夾。

我知道在Windows中你可以在Windows資源管理器地址欄中輸入%temp%來轉到臨時目錄。 我不確定OSX上是否有這樣的東西

嘗試打印出tempFolder.getAbsolutePath()。 它應該為您提供創建此文件夾的路徑。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM