Если вам нужен временный каталог, используйте http://commons.apache.org/io/apidocs/org/apache/commons/io/FileUtils.html и ищите getTempDirectory ().Это должно работать где угодно
Так что вам нужен системный временный каталог, который предоставляется системой.Вы можете получить это либо по пути, либо по фактическому файлу.(IOUtils предоставляет оба подхода).Вот документы IOUtil: getTempDirectory
public static File getTempDirectory()
Returns a File representing the system temporary directory.
Returns:
the system temporary directory.
Так что если вы напишите:
File myTempFile = IOUtils.getTempDirectory();
, тогда myTempFile будет там, куда вы хотите писать.
Если некоторыеприложение запрашивает каталог по имени, тогда вы можете использовать getTempDirectoryPath (), который даст путь.
В вашем примере я бы написал:
private static final String TMP_DIR_PATH = IOUtils.getTempDirectoryPath();
или используя подход @ dogbane:
private static final String TMP_DIR_PATH = System.getProperty("java.io.tmpdir");
Я ожидаю, что они дадут тот же ответ.
Если вы все еще в замешательстве, продолжайте спрашивать - вот для чего ТАК!
ОБНОВЛЕНИЕ: Если выДелая что-нибудь с файлами, стоит ознакомиться с Apache FileUtils и IOUtils.Есть несколько вещей, которые JDK не делает хорошо или естественно, и Apache предоставляет лучшую поддержку.