获取图片目录的路径

时间:2016-09-05 13:51:01

标签: android xamarin xamarin.android


我尝试使用我的Xamarin.Android应用程序保存图像(位图/字节[])。
我用了

    private string getPathToFile(string fileName)
    {
        File dir = new File(Environment.GetExternalStoragePublicDirectory(Environment.DirectoryPictures), "imgen");
        if (dir.Exists())
        {
            dir.Mkdirs();
        }

        File image = new File(dir, fileName);
        return image.Path;
    }

所以返回的路径看起来像这样:

"/storage/emulated/0/Pictures/imgen/new.png"

但是当我使用Android设备监视器检查时,模拟器上不存在此路径。
我读到这个文件夹是某种到mnt / shell / emulated / ...文件夹的链接,它实际存在于模拟器上。
但是如何在我的应用程序中检索这个真实路径?

2 个答案:

答案 0 :(得分:8)

我将此代码用于设备:

path = Android.OS.Environment.GetExternalStoragePublicDirectory(
  Android.OS.Environment.DirectoryPictures).AbsolutePath;

string myPath= Path.Combine(path, "file.name");

对于模拟器,它不起作用。

答案 1 :(得分:1)

请使用以下代码......

`private void CreateDirectoryForPictures()
    {
        App._dir = new File(
            Environment.GetExternalStoragePublicDirectory(
                Environment.DirectoryPictures), "imgen");
        if (!App._dir.Exists())
        {
            App._dir.Mkdirs();
        }
    }`

这个 CreateDirectoryForPictures()函数调用。然后创建文件夹imgen。

相关问题