Бываюць выпадкі, калі нам трэба ствараць часовыя файлы на лета, каб захоўваць некаторую інфармацыю і потым іх выдаляць.
У 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' - суфікс.
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();
}
} }
Далейшае чытанне: