我想将视频文件上传到我的云存储中,但是我想在上传之前检查视频文件的大小。如何做到这一点
答案 0 :(得分:8)
dart 中的解决方案:
//定义函数
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];
}
//如何调用函数
print(getFileSize('file-path-will-be-here', 1));
// 输出将是像这样的字符串:
97.5 KB
这对我有用。我希望,这也能帮助你。非常感谢提问。
答案 1 :(得分:6)
如果您具有文件的路径,则可以使用dart:io
var file = File('the_path_to_the_video.mp4');
print(file.lengthSync());
答案 2 :(得分:2)
这对我有用。
final file = File('pickedVid.mp4');
int sizeInBytes = file.lengthSync();
double sizeInMb = sizeInBytes / (1024 * 1024);
if (sizeInMb > 10){
// This file is Longer the
}