Suse环境File.mkdirs()创建的目录判断是否可写返回false的问题
来源:互联网 发布:原单厂家直拿wsj淘宝 编辑:程序博客网 时间:2024/05/01 01:19
使用Apache common io的FileUtils.copyDirectory将一个目录拷贝到另一个目录,执行时总是报目标目录不可写,但是目标目录是在拷贝前创建了,telnet到后台查看用户对该目录的权限也是有的,很奇怪!
多次尝试发现:如果构造File的路径中有“..”,那么使用mkdirs创建目录后使用canWrite判断是否可写就会返回false,而如果路径中没有的话就会返回true,通过使用getCanonicalFile返回规范形式的File对象进行操作可以规避这个问题,如下
File file = new File("/opt/tools/pkgmgr/backup/run/../tmp");
file = file.getCanonicalFile();
if (file.mkdirs()) {
System.out.println(file.canWrite());
}
多次尝试发现:如果构造File的路径中有“..”,那么使用mkdirs创建目录后使用canWrite判断是否可写就会返回false,而如果路径中没有的话就会返回true,通过使用getCanonicalFile返回规范形式的File对象进行操作可以规避这个问题,如下
File file = new File("/opt/tools/pkgmgr/backup/run/../tmp");
file = file.getCanonicalFile();
if (file.mkdirs()) {
System.out.println(file.canWrite());
}
- Suse环境File.mkdirs()创建的目录判断是否可写返回false的问题
- 判断目录是否可写
- 【Android】无法在外置存储上创建文件夹,file.mkdirs()一直返回false
- Android无法在外置存储上创建文件夹,file.mkdirs()一直返回false
- linux目录下的一级子目录过多,导致创建目录失败(java file mkdirs)
- ftpClient.makeDirectory(path) 一直返回false,无法创建目录的问题
- 文件读写 file.mkdirs()为啥总是返回false
- 【Java】利用自带的file.mkdirs();创建文件夹与file.mkdirs();的注意事项
- delphi 判断目录是否可写
- 直接比较两个对象是否相等返回false和List中判断是否包含某个对象的问题
- 实现的小功能:判断报名是否重复,是返回true,否返回false.
- Android 中mkdir() 和mkdirs()创建目录的区别
- Android 中mkdir() 和mkdirs()创建目录的区别
- git-svn mkdirs 没有创建空目录的原因
- android 外部存储创建文件夹总是返回false的问题
- File的mkdir() 和 mkdirs()
- File的mkdir() 和 mkdirs()
- File的mkdir() 和 mkdirs()
- 从生活中看SpringIOC原理
- 二叉树的定义与性质
- 排序(四)——关于归并排序
- 关于 Android 下的自动化测试方法介绍
- smarty3的一些实用的新特性
- Suse环境File.mkdirs()创建的目录判断是否可写返回false的问题
- TCP三次握手与四次挥手!
- java基础知识4-变量比较,类型转换
- oracle 监听无法启动处理
- 排序(五)——关于桶式排序
- hdu 4771好题
- 二叉树的遍历
- POJ 1502 MPI Maelstrom
- 某应用出现启动后集群中部分node成功,部分node失败