Linux 下 java 的File类的renameTo()方法 不能重命名文件
importjava.io.*;publicclassTextRename{publicstaticvoidmain(Stringargs[]){Fileoldfile=...
import java.io.*;
public class TextRename{
public static void main(String args[]){
File oldfile = new File("//media//project//xccca//build//web//uploadfiles//netbeans-6.9.desktop");
File newfile = new File("//media//project//xccca//build//web//uploadfiles//11111111.desktop");
System.out.println(oldfile.getName());
System.out.println(oldfile.renameTo(newfile));
}
}
输出的是旧文件名和false
我再本地也就是window环境下使用是没有问题的,但是把项目部署到linux环境下就一直失败,不知道 为什么! 展开
public class TextRename{
public static void main(String args[]){
File oldfile = new File("//media//project//xccca//build//web//uploadfiles//netbeans-6.9.desktop");
File newfile = new File("//media//project//xccca//build//web//uploadfiles//11111111.desktop");
System.out.println(oldfile.getName());
System.out.println(oldfile.renameTo(newfile));
}
}
输出的是旧文件名和false
我再本地也就是window环境下使用是没有问题的,但是把项目部署到linux环境下就一直失败,不知道 为什么! 展开
5个回答
展开全部
//media//project//xccca//build//web//uploadfiles//netbeans-6.9.desktop 这个文件必须先存在 , 试试用root账号执行java TextRename行不行
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
路径请使用File.separator代替//
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
File target = new File(newFilename);
if (target.exists()) {
target.delete();
}
File file = new File(oldFilename);
boolean result = file.renameTo(target);
if (target.exists()) {
target.delete();
}
File file = new File(oldFilename);
boolean result = file.renameTo(target);
追问
可否看清问题在回答!我问的不是怎么用!是linux环境下为什么不能用!
追答
LINUX下是可以用的,你看一下源文件名、路径对不对,以及是否有读写权限。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
file.getparent()
返回的是一个字符串类型
返回此抽象路径名父目录的路径名字符串
filename是一个字符串类型
所以就是通过
file
(string parent,
string child)这个构造方法去构造出一个file出来
具体可以自己参见api文档
io
f
返回的是一个字符串类型
返回此抽象路径名父目录的路径名字符串
filename是一个字符串类型
所以就是通过
file
(string parent,
string child)这个构造方法去构造出一个file出来
具体可以自己参见api文档
io
f
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询