如何在 Xamarin 中获取资产文件路径?
How to get asset file path in Xamarin?
我在 Assets
文件夹中有 data.xlsx
文件,需要获取其路径才能应用某些库。
在这里找到了几个解决方案,但都不适合我。例如 -
File Not Found Exception In Xamarin program
我尝试使用 file:///android_asset/data.xlsx
但这里也没有文件。
我检查了路径:System.IO.File.Exists(filePath);
那么如何获取这个文件的路径呢?也许我必须将它放在不同的文件夹中?
更新:可能我可以这样解决:java.io.FileNotFoundException: This file can not be opened as a file descriptor; it is probably compressed
但是我找不到放在哪里。
更新:这个问题是关于Java的,不清楚如何在Xamarin.Android中使用这个解决方案:How to get the android Path string to a file on Assets folder?
该文件似乎未包含在 APK 中。确保资产文件夹中文件的 Build Action 设置为 AndroidAsset.
一般使用Xamarin.android,你可以使用这个代码:
private string _fileName {get;set;}
public string FileFullPath
{
get
{
return Path.Combine(Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryPictures),_fileName);
}
}
希望对您有所帮助..:)
看来不可能。
最接近的解决方案是将文件写入缓存。
我在 Assets
文件夹中有 data.xlsx
文件,需要获取其路径才能应用某些库。
在这里找到了几个解决方案,但都不适合我。例如 - File Not Found Exception In Xamarin program
我尝试使用 file:///android_asset/data.xlsx
但这里也没有文件。
我检查了路径:System.IO.File.Exists(filePath);
那么如何获取这个文件的路径呢?也许我必须将它放在不同的文件夹中?
更新:可能我可以这样解决:java.io.FileNotFoundException: This file can not be opened as a file descriptor; it is probably compressed
但是我找不到放在哪里。
更新:这个问题是关于Java的,不清楚如何在Xamarin.Android中使用这个解决方案:How to get the android Path string to a file on Assets folder?
该文件似乎未包含在 APK 中。确保资产文件夹中文件的 Build Action 设置为 AndroidAsset.
一般使用Xamarin.android,你可以使用这个代码:
private string _fileName {get;set;}
public string FileFullPath
{
get
{
return Path.Combine(Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryPictures),_fileName);
}
}
希望对您有所帮助..:)
看来不可能。
最接近的解决方案是将文件写入缓存。