Я только что сохранил файл, используя путь, созданный:
string documentsPath = Path.Combine(Android.OS.Environment.ExternalStorageDirectory.AbsolutePath, Android.OS.Environment.DirectoryDocuments);
fileName = System.IO.Path.Combine(documentsPath, fileData.FileName);
Путь к файлу заканчивается и успешно сохраняется: /storage/emulated/0/Documents/test.csv
Теперь я использую средство выбора файлов, чтобы выбрать файл следующим образом:
FileData fileData = await CrossFilePicker.Current.PickFile();
, но возвращается fileData.FilePath: content: //com.android.externalstorage.documents/document/home%3Atest.csv
Этот путь тогда не работает, вставляя его в:
StreamReader sr = new StreamReader (fileData.FilePath);
Однако, если я использую этот путь из .DirectoryDocuments выше с именем файла, StreamReader открывает его просто прекрасно.
Итак, @vividos, как можно преобразовать путь выбора файлов в реальный путь, который может использовать StreamReader?