1. Bibliotecas relacionadas
As bibliotecas de classes relacionadas estabelecidas para diretórios e arquivos em Java são todas File, o que equivale à modelagem unificada, mas para ser honesto, é quase o mesmo, apenas trate o diretório como um arquivo especial.
As operações de diretório comuns nada mais são do que adicionar, excluir, renomear e consultar subdiretórios. Escrevemos uma classe de ferramenta.
2. Ferramentas de operação de diretório
código mostrado abaixo:
/**
1. 目录操作工具类
*/
public class DirectoryUtils {
/**
* 创建目录
*/
public static boolean createDirectory(String path) {
File dir = new File(path);
return dir.mkdir();
}
/**
* 删除目录
*/
public static boolean deleteDirectory(String path) {
File dir = new File(path);
return dir.delete();
}
/**
* 重命名目录
*/
public static boolean renameDirectory(String oldPath, String newPath) {
File dir = new File(oldPath);
return dir.renameTo(new File(newPath));
}
/**
* 列出子目录信息
*/
public static File[] getChildrenDirectories(String path) {
File dir = new File(path);
return dir.listFiles();
}
/**
* 测试
*/
public static void main(String[] args) throws IOException, InterruptedException {
// 新增目录测试
DirectoryUtils.createDirectory("D:/dir");
DirectoryUtils.createDirectory("D:/dir/dir1");
DirectoryUtils.createDirectory("D:/dir/dir2");
DirectoryUtils.createDirectory("D:/dir/dir3");
// 重命名测试
DirectoryUtils.renameDirectory("D:/dir/dir1", "D:/dir/dir_1");
DirectoryUtils.renameDirectory("D:/dir/dir2", "D:/dir/dir_2");
// 删除测试
DirectoryUtils.deleteDirectory("D:/dir/dir3");
// 列出子目录
File[] files = DirectoryUtils.getChildrenDirectories("D:/dir");
for (File file : files) {
System.out.println(file.getName());
}
}
}
3. Explicação do código
Existem vários pontos a serem observados:
- Se o diretório pai não existir, a criação direta do subdiretório retornará falso, por exemplo, se ele não existir
D:/dir
, a criação diretaD:/dir/dir1
falhará. - Pode ser usado
/
como um separador de caminho independente de plataforma, diretamente em plataformas como Windows - Ele também pode ser usado
\\
como um caractere de estilo de caminho na plataforma Windows, onde a primeira barra invertida é um caractere de escape.