Я думаю, это то, что вы просите
Future<int> readFile() async {
try {
final file = await _localFile();
// Read the file.
String contents = await file.readAsString();
return contents;
} catch (e) {
// If encountering an error, return 0.
return 0;
}
}
Future<File> _localFile() async {
// get the path to the document directory.
String dir = (await PathProvider.getApplicationDocumentsDirectory()).path;
return new File('$dir/YourFileName.txt');
}
Файл будет там, где вы его написали. Основными двумя каталогами, в которые вы, вероятно, записали бы его, будет
Временный каталог
Временный каталог (кэш), который система может очистить в любое время. На iOS это соответствует NSCachesDirectory. В Android это значение, которое возвращает getCacheDir ().
Каталог документов
Каталог приложения, в котором хранятся файлы, к которым имеет доступ только он. Система очищает каталог только при удалении приложения. На iOS это соответствует NSDocumentDirectory. На Android это каталог AppData.
Взгляните на этот пакет, я думаю, он может вас заинтересовать downloads_path_provider .
import 'package:downloads_path_provider/downloads_path_provider.dart';
Future<Directory> downloadsDirectory = DownloadsPathProvider.downloadsDirectory;
В этом коде каталог downloads - это каталог загрузок в памяти телефона, который может просматривать пользователь. Затем вы можете открыть или отправить его по электронной почте.