2012-09-07 91 views
1

我需要我和我的應用程序發現一個小問題,你的幫助。如何獲取指定位置的URI?

在我的應用程序,我使用此代碼的所有內容複製的資源文件夾中,我創建自己的文件夾。

File wallpaperDirectory = new File("/sdcard/Wallpaper/"); 
    wallpaperDirectory.mkdirs(); 

    AssetManager assetManager = getAssets(); 
    String[] files = null; 
    try { 
     files = assetManager.list(""); 
    } catch (IOException e) { 
     Log.e("tag", e.getMessage()); 
    } 
    for(String filename : files) { 
     InputStream in = null; 
     OutputStream out = null; 
     try { 
      in = assetManager.open(filename); 
      out = new FileOutputStream("/sdcard/Wallpaper/" + filename); 
      copyFile(in, out); 
      in.close(); 
      in = null; 
      out.flush(); 
      out.close(); 
      out = null; 
     } catch(Exception e) { 
      Log.e("tag", e.getMessage()); 
     }  
} 

private void copyFile(InputStream in, OutputStream out) throws IOException { 
    byte[] buffer = new byte[1024]; 
    int read; 
    while((read = in.read(buffer)) != -1){ 
     out.write(buffer, 0, read); 
    } 
} 

現在我需要的「URI到這個文件夾(/ SD卡/壁紙/),我創建,當你?非常感謝你

回答

2

獲取特定文件夾的Uri在SD卡。

String sdcard = Environment.getExternalStorageDirectory().getAbsolutePath(); 

Uri.fromFile(new File(sdcard+"/Wallpaper/")); 

或者

Uri.parse(sdcard+"/Wallpaper/") 
+0

我需要的「URI到文件夾,而不是包含在它特定的文件。因爲根據我的想法,那麼我必須隨機使用遊標來獲取這個路徑中的文件 – David

1
Uri uri = Uri.fromFile(new File("/sdcard/Wallpaper/")); 

Uri uri = Uri.parse("/sdcard/Wallpaper/"); 
1

試試這個

得到的文件路徑

File path = "/sdcard/Wallpaper/"; 

通過下面的代碼

Uri imageurl = Uri.fromFile(path); 

希望它有助於轉換到URI中的文件路徑。

0

您可以從android.net.Uri使用public static Uri fromFile (File file)方法。