无法运行程序" chmod":CreateProcess error = 2,系统找不到java.lang.ProcessBuilder.start(Unknown Source)中指定的文件

时间:2015-02-17 08:18:07

标签: java linux file ubuntu server

public String moveFilestoDestinationFolder(String src_loc,String desc_loc) {

    String msg="";

    try {


        File srcfile =new File(src_loc);
        //change permission to 777 for all the users
        //no option for group and others
        Runtime.getRuntime().exec("chmod 777 file"); 

        srcfile.setExecutable(true, false);
        srcfile.setReadable(true, false);
        srcfile.setWritable(true, true);

    //  srcfile.renameTo(new File(desc_loc));

        if(srcfile.renameTo(new File(desc_loc))){

            msg="File is moved successful!";
        }else{

            msg="File is failed to move!";
        }

    }catch(Exception e){
        e.printStacktrace();
    }

    return msg;
}

这是用于将文件从一个文件夹移动到另一个文件夹的代码。但它不起作用。这里我设置了所有文件权限。它还没有用。

2 个答案:

答案 0 :(得分:0)

您已拨打renameTo()两次。如果第一次重命名有效,第二次重命名可能无效,如果第一次无效,第二次也不能。

删除第一个。

答案 1 :(得分:-1)

尝试将源文件的许可权作为

File srcfile =new File(src_loc);
    //change permission to 777 for all the users
    //no option for group and others
    Runtime.getRuntime().exec("chmod 777 "+srcfile ); 

Plz试试这个