重命名SD卡中的文件夹

时间:2011-05-02 11:45:31

标签: android directory rename

这应该是一项非常简单的任务,但我已经有一段时间没有成功......

在我的应用程序中,我在SD卡中创建了一个文件夹,我存储了临时的jpg文件。由于我不希望我的应用程序在浏览手机图像时显示这些临时文件,因此我试图隐藏该文件夹。所以,在创建dir之后,我尝试重命名它,就像这样:

String tmppath="/sdcard/myapp/tmp";
try
{
//this creates a directory named TMP -->OK!
 File f=new File(tmppath); 
  if(!f.isDirectory())  
   f.mkdirs();  

//this was supposed to rename the directory to .TMP, but isn't working...

Process process=Runtime.getRuntime().exec("mv "+tmppath +" /sdcard/myapp/.tmp/");
process.waitFor();
}
catch(SecurityException e)
{
}
catch(IOException e)
{
} 
catch (InterruptedException e) 
{
}

有什么想法吗?

3 个答案:

答案 0 :(得分:15)

File file = new File("your old file name");
File file2 = new File("your new file name");
boolean success = file.renameTo(file2);

答案 1 :(得分:6)

final File F=new File("youroldpath");  
String newname="newname";  
File newfile=new File(F.getParent(),newname);  
F.renameTo(newfile);

答案 2 :(得分:2)

您是否尝试在File中使用renameTo方法? Here是重命名文件或文件夹的示例。

package com.tutorialspoint;

import java.io.File;

public class FileDemo {
   public static void main(String[] args) {

      File f = null;
      File f1 = null;
      boolean bool = false;

      try{      
         // create new File objects
         f = new File("C:/test.txt");
         f1 = new File("C:/testABC.txt");

         // rename file
         bool = f.renameTo(f1);

         // print
         System.out.print("File renamed? "+bool);

      }catch(Exception e){
         // if any error occurs
         e.printStackTrace();
      }
   }
}