2

我需要您的帮助来解决我在应用程序中发现的一个小问题。

在我的应用程序中,我使用此代码将资产文件夹的所有内容复制到我自己创建的文件夹中。

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

现在我需要我创建的这个文件夹 (/sdcard/Wallpaper/) 的 URI,你知道吗?非常感谢你

4

4 回答 4

2

获取 SD 卡上特定文件夹的 Uri。

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

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

或者

Uri.parse(sdcard+"/Wallpaper/")
于 2012-09-07T11:48:00.383 回答
1
Uri uri = Uri.fromFile(new File("/sdcard/Wallpaper/"));

或者

Uri uri = Uri.parse("/sdcard/Wallpaper/");
于 2012-09-07T11:49:11.500 回答
1

试试这个

获取文件路径

File path = "/sdcard/Wallpaper/";

通过以下代码将文件路径转换为 ​​Uri

Uri imageurl = Uri.fromFile(path); 

希望能帮助到你。

于 2012-09-07T11:49:13.910 回答
0

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

于 2012-09-07T12:00:00.740 回答