Як стварыць часовы файл на Java

Бываюць выпадкі, калі нам трэба ствараць часовыя файлы на лета, каб захоўваць некаторую інфармацыю і потым іх выдаляць.

У Java мы можам выкарыстоўваць Files.createTempFile() метады стварэння часовых файлаў.



Стварэнне часовых файлаў

У наступным прыкладзе выкарыстоўваецца Files.createTempFile(prefix, suffix) каб стварыць часовы файл.


import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; public class CreateTempFile {
public static void main(String[] args) {

try {

// Create a temporary file

Path tempFile = Files.createTempFile('temp-', '.txt');

System.out.println('Temp file : ' + temp);

} catch (IOException e) {

e.printStackTrace();
}
} }

Выхад:

Temp file : /var/folders/nyckvw0000gr/T/temp-2129139085984899264.txt

Тут 'temp-' - гэта прэфікс, а '.text' - суфікс.


нататка:Па змаўчанні Java стварае часовы файл у часовым каталогу. Мы можам атрымаць часовы каталог, зрабіўшы System.getProperty('java.io.tmpdir')

Калі суфікс нулявы, часовы файл ствараецца з .tmp прыбудова.



Напрыклад:

Path tempFile = Files.createTempFile('prefix-', null); System.out.println('Temp file : ' + tempFile); // Temp file : /var/folders/nyckvw0000gr/T/prefix-17184288103181464441.tmp

Акрамя таго, калі суфікс не прадастаўляецца, ствараецца часовы файл без пашырэння:

Path tempFile = Files.createTempFile(null, ''); System.out.println('Temp file : ' + tempFile); // Temp file : /var/folders/nyckvw0000gr/T/1874152090427250275

Стварыце часовы файл у зададзеным каталогу

Замест таго, каб дазваляць Java выбіраць каталог, мы можам сказаць, дзе стварыць часовы файл.


Напрыклад:

import java.io.IOException; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; public class CreateTempFile {
public static void main(String[] args) {

try {

Path path = Paths.get('target/tmp/');

// Create a temporary file in the specified directory.

Path tempFile = Files.createTempFile(path, null, '.log');

System.out.println('Temp file : ' + temp);

} catch (IOException e) {

e.printStackTrace();
}
} }
нататка:Указаны каталог павінен існаваць, каб часовы файл быў запісаны ў яго.

Стварыце часовы файл і запішыце ў яго

Наступны прыклад кода стварае часовы файл, а потым запісвае ў яго тэкст:

import java.io.IOException; import java.nio.charset.StandardCharsets; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; public class CreateTempFile {
public static void main(String[] args) {

try {

Path path = Paths.get('target/tmp/');

// Create an temporary file in a specified directory.

Path tempFile = Files.createTempFile(path, null, '.log');

System.out.println('Temp file : ' + tempFile);

// write a line

Files.write(tempFile, 'Hello From Temp File '.getBytes(StandardCharsets.UTF_8));

} catch (IOException e) {

e.printStackTrace();
}
} }

Далейшае чытанне: