how do I check the file size of a video in flutter before uploading
If you have the path of the file, you can use dart:io
var file = File('the_path_to_the_video.mp4');
You an either use:
print(file.lengthSync());
or
print (await file.length());
Note: The size returned is in bytes
.
// defined the function
getFileSize(String filepath, int decimals) async { var file = File(filepath); int bytes = await file.length(); if (bytes <= 0) return "0 B"; const suffixes = ["B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"]; var i = (log(bytes) / log(1024)).floor(); return ((bytes / pow(1024, i)).toStringAsFixed(decimals)) + ' ' + suffixes[i]; }
// how to call the function
print(getFileSize('file-path-will-be-here', 1));
// output will be as string like:
97.5 KB
This worked for me. I hope, this will also help you. Thanks a lot for asking question.
This is work for me.
final file = File('pickedVid.mp4'); int sizeInBytes = file.lengthSync();double sizeInMb = sizeInBytes / (1024 * 1024);if (sizeInMb > 10){ // This file is Longer the}