All Projects → MohamSayed → flutter_file_utils

MohamSayed / flutter_file_utils

Licence: MIT license
Flutter package for managing files on Android

Programming Languages

dart
5743 projects
java
68154 projects - #9 most used programming language
objective c
16641 projects - #2 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to flutter file utils

Filegator
Powerful Multi-User File Manager
Stars: ✭ 587 (+1577.14%)
Mutual labels:  filesystem, file
FileRenamerDiff
A File Renamer App featuring a difference display before and after the change.
Stars: ✭ 32 (-8.57%)
Mutual labels:  filesystem, file
Filesize.js
JavaScript library to generate a human readable String describing the file size
Stars: ✭ 997 (+2748.57%)
Mutual labels:  filesystem, file
replace-in-files
Replace text in one or more files or globs.
Stars: ✭ 21 (-40%)
Mutual labels:  filesystem, file
Aiofile
Real asynchronous file operations with asyncio support.
Stars: ✭ 214 (+511.43%)
Mutual labels:  filesystem, file
Chonky
😸 A File Browser component for React.
Stars: ✭ 313 (+794.29%)
Mutual labels:  filesystem, file
File Storage
File storage abstraction for Yii2
Stars: ✭ 116 (+231.43%)
Mutual labels:  filesystem, file
watcher
The file system watcher that strives for perfection, with no native dependencies and optional rename detection support.
Stars: ✭ 37 (+5.71%)
Mutual labels:  filesystem, file
Filehound
Flexible and fluent interface for searching the file system
Stars: ✭ 190 (+442.86%)
Mutual labels:  filesystem, file
Filesystem
FileSystem is an application that allows you to browse the content of your iPhone disk, displaying file and folders, files contents, and detailed informations about file and folder permissions.
Stars: ✭ 148 (+322.86%)
Mutual labels:  filesystem, file
FireFiles
Powerful Android File Manager for everything that runs on Android OS (Android TV, Android Watch, Mobile, etc)
Stars: ✭ 37 (+5.71%)
Mutual labels:  filesystem, file
fileutils
Golang file system utils such as copy files and directories
Stars: ✭ 19 (-45.71%)
Mutual labels:  filesystem, file
TLightFileStream
Implements a lightweight, high-performance, non-allocating advanced-record-based wrapper around the SysUtils file handling routines as an alternative to Classes.TFileStream.
Stars: ✭ 21 (-40%)
Mutual labels:  filesystem, file
Filer
Node-like file system for browsers
Stars: ✭ 389 (+1011.43%)
Mutual labels:  filesystem, file
files
Useful methods to manage files and directories
Stars: ✭ 27 (-22.86%)
Mutual labels:  filesystem, file
Hypertag
Knowledge Management for Humans using Machine Learning & Tags
Stars: ✭ 116 (+231.43%)
Mutual labels:  filesystem, file
ansible-role-glusterfs
Ansible Role - GlusterFS
Stars: ✭ 95 (+171.43%)
Mutual labels:  filesystem, file
flysystem-sync
Filesystem sync using Flysystem project.
Stars: ✭ 26 (-25.71%)
Mutual labels:  filesystem, file
Flametree
🔥 Python file and zip operations made easy
Stars: ✭ 148 (+322.86%)
Mutual labels:  filesystem, file
Copy Webpack Plugin
Copy files and directories with webpack
Stars: ✭ 2,679 (+7554.29%)
Mutual labels:  filesystem, file

flutter_file_utils

Helper tools for managing files on Android.

Getting Started

For help getting started with Flutter, view our online documentation.

For help on editing package code, view the documentation.

Screenshots

Usage

To use this package, add these
dependency in your pubspec.yaml file.

dependencies:
  flutter:
    sdk: flutter
  path: 1.6.2
  path_provider: 0.5.0+1
  flutter_file_utils: ^0.2.0

And, add read / write permissions in your android/app/src/main/AndroidManifest.xml

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>

Don't forget to grant Storage permissions to your app, manually or by this plugin simple_permissions

// dart files
import 'dart:async';

// framework
import 'package:flutter/material.dart';

// packages
import 'package:path_provider/path_provider.dart';
import 'package:flutter_file_utils/flutter_file_utils.dart';
import 'package:simple_permissions/simple_permissions.dart';

void main() => runApp(new MyApp());

class MyApp extends StatefulWidget {
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  @override
  Widget build(BuildContext context) {
    SimplePermissions.requestPermission(Permission.ReadExternalStorage);
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text("Flutter File Manager Example"),
        ),
        body: FutureBuilder(
            future: _files(),
            builder: (BuildContext context, AsyncSnapshot snapshot) {
              if (snapshot.connectionState == ConnectionState.done) {
                return ListView.builder(
                  itemCount: snapshot.data?.length ?? 0,
                  itemBuilder: (context, index) {
                    return ListTile(
                      title: Text(snapshot.data[index].path.split('/').last),
                    );
                  },
                );
              } else if (snapshot.connectionState == ConnectionState.waiting) {
                return Center(child: Text("Loading"));
              }
            }),
      ),
    );
  }

  _files() async {
    var root = await getExternalStorageDirectory();
    var files = await FileManager(root: root).walk().toList();
    return files;
  }
}

Examples

Features

  • File Details
  • Search files or directories: supports regular expressions
  • Recent created files: you can exclude a list of directories from the tree
  • Directories only tree: you can exclude a list of directories from the tree
  • Files only tree: you can exclude a list of directories from the tree
  • Files list from specific point
  • Delete files
  • Delete directory
  • Temp file
  • Sorting
    • Type
    • Size
    • Date
    • Alpha
  • Filtering
    • Extensions
    • Files only
    • Directories only
  • System Tools
    • Copy
    • Rename

Contributors

Donate

Contact me

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].