我需要重命名Android应用程序的文件名。我在onListItemClick()中编写了代码,但它无法正常工作。我也没有得到任何例外。这是代码。这里有什么错误?
File oldFile = new File(path.get(position));
String oldFileName=path.get(position);
Toast.makeText(this, path.get(position), Toast.LENGTH_LONG).show();
String segments[]=oldFileName.split("/");
String fileName=segments[segments.length-1];
String newFileName=oldFileName.replace(fileName, "log_B.txt");
File newFile=new File(newFileName);
if(!oldFile.isDirectory()){
System.out.println("File Name is:"+fileName);
try{
if(oldFile.renameTo(newFile)){
System.out.println("File renamed successfull !");
}else{
System.out.println("File renamed operation failed");
}
}catch(Exception ex){
System.out.println("Exception :"+ex.getMessage());
}
}else{
System.out.println("Folder Name is :"+fileName);
}
答案 0 :(得分:0)
确保您在清单文件中定义了写权限:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
File.renameTo()方法将在以下条件下失败:
如文档中所述:http://developer.android.com/reference/java/io/File.html#renameTo(java.io.File)
此外,我将验证newFile路径是否符合您的预期。