Java 尝试使用代码重命名我的android设备中extSdCard中的文件夹

Java 尝试使用代码重命名我的android设备中extSdCard中的文件夹,java,android,Java,Android,我试图开发和应用程序与2个按钮(显示,隐藏),当我点击显示它重命名文件夹从.pics到pics 对于隐藏按钮,它可以从pics重命名为.pics,并在每次单击时运行媒体扫描程序 这是代码我不知道哪里是我的错误,我在这里做了很多搜索,但没有解决我的问题 Button btnShow = (Button) findViewById(R.id.btnShow); //rename the folder vids String sdcard = new String("/storage/sdcard1

我试图开发和应用程序与2个按钮(显示,隐藏),当我点击显示它重命名文件夹从.pics到pics

对于隐藏按钮,它可以从pics重命名为.pics,并在每次单击时运行媒体扫描程序

这是代码我不知道哪里是我的错误,我在这里做了很多搜索,但没有解决我的问题

Button btnShow = (Button) findViewById(R.id.btnShow);

//rename the folder vids
String sdcard = new String("/storage/sdcard1/");
File from = new File(sdcard, (".pics"));
File to = new File(sdcard, ("pics"));
from.renameTo(to);

//create on click to trigger media scan
btnShow.setOnClickListener(new OnClickListener() {
    @Override
    public void onClick(View view) {
        //Broadcast the Media Scanner Intent to trigger it
        sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED,
                Uri.parse("file://" + Environment.getExternalStorageDirectory())));

        //send a message
        Toast toast = Toast.makeText(getApplicationContext(), "Media scanner triggered....", Toast.LENGTH_SHORT);
        toast.show();
    }
});
我在使用环境之前指定了extSdCard的路径,该环境将显示普通SD卡,而不是外部SD

当我在手机上运行它时,我只会触发媒体扫描仪,而不会重命名文件夹


谢谢

您需要以下权限才能在SD卡上进行更改


现在发生了什么?有错误吗?logcat请
from.renameTo(to)
在成功时返回一个
布尔值
true
,如果失败则返回
false
。检查结果是什么
/storage/sdcard1/.vids
可能是错误的路径为什么要在“vids”周围使用paren?这甚至可以编译吗?扩展zapl所说的,您的代码可以从这里的一些日志语句中获益。或者你可以在调试器下运行你的应用程序。我猜zapl是对的;from.toString()和from.exists()返回什么?请帮助,它仍然无法工作。我在manifast中添加了权限,添加了布尔值,结果为false,这是我添加的,布尔值成功=from.renameTo(to);System.out.println(“文件重命名:+成功”);输出为File rename:false