我正在尝试使用renameTo()
在我的应用中重命名图像,但在重命名后会留下一个带有旧文件名和大小为0字节的空缩略图。我该如何解决?
private void renameFileAlert(){
String renameFile = etRenameFile.getText().toString();
Log.v(TAG, renameFile + " another");
String filename= al_images.get(int_position).getAl_imagepath().get(fileIndex);
File oldFilePath = new File(al_images.get(int_position).getAl_imagepath().get(fileIndex));
Log.v(TAG,oldFilePath.toString());
x = al_images.get(int_position).getAl_imagepath().get(fileIndex);
File renamedFile = new File(oldFilePath.getParentFile(), renameFile);
Log.v(TAG, renamedFile.toString() + " new name");
boolean renamed = oldFilePath.renameTo(renamedFile);
if(renamed){
Log.v(TAG, "rename done");
} else Log.v(TAG, "failed");
MediaScannerConnection.scanFile(PhotosActivity.this,new String[] { renamedFile.toString() }, null, new MediaScannerConnection.OnScanCompletedListener()
{
public void onScanCompleted(String path, Uri uri)
{
Log.i("ZAA", "Scanned " + path + ":");
Log.i("ZAA", "-> uri=" + uri);
}
});
}
当媒体扫描仪无法正常工作时,我尝试使用以下代码进行扫描,但它也没有用。
public final void notifyMediaStoreScanner(File file) {
getBaseContext().sendBroadcast(new Intent(
Intent.ACTION_MEDIA_SCANNER_SCAN_FILE, Uri.fromFile(file)));
}
我不知道自己做错了什么。任何人都可以帮我解决这个问题或提出建议吗?