Java的文件 createTempDirectory() 方法和示例
Java.nio.file.Files 类的 createTempDirectory() 方法用于使用给定的前缀和属性创建新目录。给定的前缀作为所形成目录的名称,可以为空。目录是用给定的属性设置的。
基于传递的参数类型,Files 类提供了两种类型的 createTempDirectory() 方法。
方法:
1. public static Path createTempDirectory(Path dir, String prefix, FileAttribute>... attrs):该方法用于在已经存在的目录中创建一个新目录,使用给定的前缀生成其名称。新形成的目录的路径与默认文件系统相关联。与指定目录的路径相同。候选名称是使用前缀生成的。 File.deleteOnExit() 方法用于自动删除目录。 attrs 参数用于设置目录的属性。每个属性都由其名称标识。如果使用相同名称指定了多个属性,则忽略除最后一个之外的所有出现。
参数:
- dir – 必须在其中创建新目录的现有目录的路径
- prefix - 目录的名称,可能为空
- attrs – 设置目录的属性(可选)
返回:新建目录的路径
例外:
- IllegalArgumentException – 如果前缀不是合适的候选目录名称
- UnsupportedOperationException – 如果无法将任何指定的属性设置为目录
- IOException – 如果发生 I/O 错误
- SecurityException – 如果在创建目录时安全管理器调用了 checkWrite 方法或写入权限被拒绝。
Java
// Java Program to show the usage of
// public static Path createTempDirectory
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
// Driver class
public class GFG {
// main method
public static void main(String[] args)
{
// prefix used to create candidate names
String prefix = "TempDirectory";
// path of the directory in which temporary
// directory has to created
Path dir = (Path)Paths.get("/usr", "local", "bin",
"directory");
try {
// creating temporary directory ans storing its
// path in tempDir variable
Path tempDir
= Files.createTempDirectory(dir, prefix);
// printing the path of the created temporary
// directory
System.out.println(
"Temporary Directory created at:\n"
+ tempDir.toString());
// deleting the temporary directory after the
// virtual machine terminates
tempDir.toFile().deleteOnExit();
}
catch (Exception e) {
e.printStackTrace();
}
}
}
Java
// Java Program to show the usage of
// public static Path createTempDirectory(
// String prefix, FileAttribute>... attrs)
// Method
import java.nio.file.Files;
import java.nio.file.Path;
// Driver class
public class GFG {
// main method
public static void main(String[] args)
{
// prefix used to create candidate names
String prefix = "TempDirectory";
try {
// creating temporary directory and storing its
// path in tempDir variable
Path tempDir
= Files.createTempDirectory(prefix);
// printing the path of the created temporary
// directory
System.out.println(
"Temporary Directory created at:\n"
+ tempDir.toString());
// deleting the temporary directory after the
// virtual machine terminates
tempDir.toFile().deleteOnExit();
}
catch (Exception e) {
e.printStackTrace();
}
}
}
输出:
Temporary Directory created at:
/usr/local/bin/directory/TempDirectory1472243991754401317
2. public static Path createTempDirectory(String prefix, FileAttribute>... attrs):这个方法 用于使用给定的前缀和属性创建新目录。给定的前缀作为所形成目录的名称,可以为空。候选名称是使用前缀生成的。目录是用给定的属性设置的。新形成的目录的路径与默认文件系统相关联。 attrs 参数用于设置目录的属性。每个属性都由其名称标识。如果使用相同名称指定了多个属性,则忽略除最后一个之外的所有匹配项。
参数:
- prefix - 目录的名称,可能为空
- attrs – 设置目录的属性(可选)
返回:新建目录的路径
例外:
- IllegalArgumentException – 如果前缀不是合适的候选目录名称
- UnsupportedOperationException – 如果无法将任何指定的属性设置为目录
- IOException – 如果发生 I/O 错误
- SecurityException – 如果在创建目录时安全管理器调用了 checkWrite 方法或写入权限被拒绝
Java
// Java Program to show the usage of
// public static Path createTempDirectory(
// String prefix, FileAttribute>... attrs)
// Method
import java.nio.file.Files;
import java.nio.file.Path;
// Driver class
public class GFG {
// main method
public static void main(String[] args)
{
// prefix used to create candidate names
String prefix = "TempDirectory";
try {
// creating temporary directory and storing its
// path in tempDir variable
Path tempDir
= Files.createTempDirectory(prefix);
// printing the path of the created temporary
// directory
System.out.println(
"Temporary Directory created at:\n"
+ tempDir.toString());
// deleting the temporary directory after the
// virtual machine terminates
tempDir.toFile().deleteOnExit();
}
catch (Exception e) {
e.printStackTrace();
}
}
}
输出:
Temporary Directory created at:
/var/folders/13/jsq29lh11bn7kgwnzpggqytr0000gn/T/TempDirectory4403940384431706243