2016-07-23 84 views
1

您好,我正在嘗試將文件從Firebase存儲下載到緩存中。這工作正常。我的問題是我無法更改整個文件名。我只能更改前綴和後綴。這是我得到的文件名。Firebase Storage Android:如何更改下載文件的文件名?

System.out: myImage -1452943744jpg 

如何我可以刪除的數字,只是更改文件名以MYIMAGE

這是我的代碼:

try { 

     localFile = File.createTempFile("myImage " ,"jpg"); 
     System.out.println(localFile.getName()); 
    } catch (IOException e) { 
     e.printStackTrace(); 
    } 

    liftImage.getFile(localFile).addOnSuccessListener(new OnSuccessListener<FileDownloadTask.TaskSnapshot>() { 
     @Override 
     public void onSuccess(FileDownloadTask.TaskSnapshot taskSnapshot) { 
      // Local temp file has been created 
      myBitmap = BitmapFactory.decodeFile(localFile.getAbsolutePath()); 
      myImageView.setImageBitmap(myBitmap); 

     } 

回答

4

當你請求系統創建一個臨時文件,它會生成使用您提供的前綴和後綴,使該名稱唯一的字符串唯一的文件名。在這種情況下,字符串是您觀察的數字字段,可能是從當前系統時間導出的。如果要完全控制文件名,則不能使用createTempFile()

相反,決定要在其中位於該文件並創建像這樣的文件:

localFile = new File(XXXX, "myImage.jpg"); 

其中XXXX是的Context方法之一,它返回一個目錄:

This guide描述了一種使用高速緩存,內部和外部文件存儲的一些考慮。

+0

非常感謝。 – Dominic