file_picker_cross 3.0.2 file_picker_cross: ^3.0.2 copied to clipboard
Select, open, choose or pick documents, images videos or other files on Android, iOS, the desktop and the web for reading, writing, use as String, byte list or HTTP uploads.
import 'package:file_picker_cross/file_picker_cross.dart';
import 'package:flutter/material.dart';
void main() {
runApp(MyApp());
}
class MyApp extends StatefulWidget {
@override
_MyAppState createState() => _MyAppState();
}
class _MyAppState extends State<MyApp> {
String _fileString;
int _fileLength = 0;
String _filePath;
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('Plugin example app'),
),
body: ListView(
padding: EdgeInsets.all(8),
children: <Widget>[
RaisedButton(
onPressed: _selectFile,
child: Text('Select File'),
),
Text('File path: $_filePath (Might cause issues on web)\n'),
Text('File length: $_fileLength\n'),
Text('File as String: $_fileString\n'),
],
),
),
);
}
void _selectFile() {
FilePickerCross.pick().then((filePicker) => setState(() {
_filePath = filePicker.path;
_fileLength = filePicker.toUint8List().lengthInBytes;
try {
_fileString = filePicker.toString();
} catch (e) {
_fileString =
'Not a text file. Showing base64.\n\n' + filePicker.toBase64();
}
}));
}
}