>我有以下代码来浏览并从Android文件系统中选择文件
Intent intent = new Intent(Intent.ActionGetContent);
intent.SetType("*/*");
intent.AddCategory(Intent.CategoryOpenable);
StartActivityForResult(Intent.CreateChooser(intent, "Select a file"),0);
现在我想获取所选文件的内容。我读了,要做到这一点,我必须放入一些代码
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
}
但是这段代码永远不会被调用,从给出的例子中,我不太明白该放什么。我要读取的文件是一个 CSV 文件 abd,我想将其数据放在数组中。
当您从 android 文件系统中选择文件时,您可以获取文件的路径,例如:
protected override void OnActivityResult(int requestCode, Result resultCode, Intent data)
{
base.OnActivityResult(requestCode, resultCode, data);
if (requestCode == 0)
{
var uri = data.Data;
string path = GetActualPathFromFile(uri);
System.Diagnostics.Debug.WriteLine("File path == " + path);
}
}
GetActualPathFromFile(uri)
方法是从Android.Net.Uri
获取实际路径,对于完整的代码,可以参考: 如何从 Uri 获取实际路径 xamarin android.
文件路径后,您可以参考以下内容获取CSV
文件内容:使用 C# 读取 CSV 文件.