我需要創建一個臨時文件夾,我可以在其中放置一些用於處理的臨時文件。我不確定我是否會在執行應用程序jar的文件夾中具有讀/寫訪問權限。在java中創建臨時文件夾
- 是否最好在系統的臨時目錄中創建臨時文件夾?
- 當我使用
File tempFolder = File.createTempFile("fooo","");
在哪裏創建的文件夾?當我在我的Mac中進入臨時文件夾時,我無法通過名稱fooo查看文件夾。
我需要創建一個臨時文件夾,我可以在其中放置一些用於處理的臨時文件。我不確定我是否會在執行應用程序jar的文件夾中具有讀/寫訪問權限。在java中創建臨時文件夾
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();
聯here
,這會給你的位置。在猜測我會說這是在/ tmp /你可以得到在從Finder
這將帶你到隱藏的文件夾。
我知道在Windows中,您可以在Windows資源管理器地址欄中鍵入%temp%,將您帶到臨時目錄。我不確定在OSX上是否有這樣的東西
嘗試打印出tempFolder.getAbsolutePath()。它應該爲您提供創建該文件夾的路徑。