Переименовать папку на SD-карте

Это должно быть, по-видимому, очень простая задача, но я был вокруг нее в течение некоторого времени без успехов …

В моем приложении я создаю папку на SD-карте, где храню временные файлы jpg. Поскольку я не хочу, чтобы мое приложение показывало эти временные файлы при просмотре телефона для изображений, я пытался скрыть эту папку. Итак, сразу после создания каталога, я попытался переименовать его, вот так:

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) { } 

Есть предположения?

     File file = new File("your old file name"); File file2 = new File("your new file name"); boolean success = file.renameTo(file2); 
     final File F=new File("youroldpath"); String newname="newname"; File newfile=new File(F.getParent(),newname); F.renameTo(newfile); 

    Вы пытались использовать метод renameTo в файле? Вот пример переименования файла или папки.

     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(); } } }