Привет, ребята, добро пожаловать в Кодексы с Санни. В этой учебной статье по флаттеру вы узнаете, как выбирать файлы (изображения, видео, аудио, документы и т. д.) в приложении флаттера.
Пакет, который позволяет вам использовать собственный проводник файлов (изображений, видео, аудио), чтобы время от времени выбирать один или несколько файлов.
Средство выбора файлов
Этот пакет очень легко использовать для выбора файлов (изображений, видео, аудио) из собственного проводника файлов, он позволяет вам использовать проводник файлов собственной платформы для выбора файлов, если поддерживается выбор одного и нескольких файлов, а также фильтрация расширений поддерживается в выбор файлов в этом приложении.
Шаг 1. Добавьте зависимость в файл pubspec.yaml, как показано ниже:
dependencies:
file_picker: ^4.1.6
Шаг 2. Импортируйте библиотеку
Теперь в вашем коде Dart вы можете использовать:
import 'package:file_picker/file_picker.dart';
Выберите один файл:
FilePickerResult? results = await FilePicker.platform.pickFiles(); if (results != null)
{
File files = File(results.files.single.path);
}
else {
}
Выберите несколько файлов:
FilePickerResult? results = await FilePicker.platform.pickFiles(allowMultiple: true); if (results != null) { List files = result.paths.map((path) => File(path)).toList(); } else {
}
Несколько файлов с фильтром расширения:
FilePickerResult? results = await FilePicker.platform.pickFiles( type: FileType.custom,
allowedExtensions: ['jpg', 'png', 'pdf', 'doc'], );
Получите полную информацию о выбранном файле во флаттере:
fileDetails(PlatformFile file)
{
final kb = file.size / 1024;
final mb = kb / 1024;
final size = (mb >= 1)
? '${mb.toStringAsFixed(2)} MB'
: '${kb.toStringAsFixed(2)} KB';
return Padding(padding: const EdgeInsets.all(8.0),
child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
Text('File Name : ${file.name}'),
Text('File Size : $size'),
Text('File Extension : ${file.extension}'),
Text('File Path : ${file.path}'),
],
),
);
}
Примечание. Я использую пакет OpenFile, чтобы открыть выбранный или выбранный пользователем файл
Открыть файл
Плагин, который может вызывать собственное приложение для открытия файлов со строкой, что приводит к флаттер-приложению, поддерживает iOS (DocumentInteraction) / android (intent) / PC (ffi) / web (dart: html) и т. д.
Шаг 1. Добавьте зависимость в файл pubspec.yaml, как показано ниже:
dependencies: open_file: ^3.2.1
Шаг 2. Импортируйте библиотеку. Теперь в коде Dart вы можете использовать:
import 'package:open_file/open_file.dart';
Фрагмент кода
void
viewFile(PlatformFile file)
{
OpenFile.open(file.path);
}