我正在尝试获取任何类型文件的路径,但不知道为什么它只适用于图像,任何其他文件扩展名路径始终为null。这是我的代码:
private string GetPath(Android.Net.Uri uri)
{
string path;
string[] projection = new[] { Android.Provider.MediaStore.MediaColumns.Data };
using (ICursor cursor = ManagedQuery(uri, projection, null, null, null))
{
if (cursor != null)
{
int columnIndex = cursor.GetColumnIndexOrThrow(Android.Provider.MediaStore.MediaColumns.Data);
cursor.MoveToFirst();
path = cursor.GetString(columnIndex);
}
}
return path;
}
我做错了什么或者还有其他办法吗?
谢谢!
答案 0 :(得分:1)
Uri有一个函数getPath(),它的调用方式如下:
uri.getPath()
您可以将其强制转换为字符串。
正如这篇文章所建议的那样:
Convert file: Uri to File in Android
修改
在Xamarin中,此功能不存在。
根据这篇文章,它应该很容易:
它使用Xamarin的官方文档:
http://developer.xamarin.com/recipes/android/other_ux/pick_image/
答案 1 :(得分:0)
感谢这个天才ryupold,有一个解决方案