getDirectorySize static method

FileResult<int> getDirectorySize(
  1. String path
)

获取目录大小

Gets the directory size

Implementation

static FileResult<int> getDirectorySize(String path) {
  try {
    final directory = Directory(path);
    if (!directory.existsSync()) {
      return const FileResult.failure('Directory does not exist');
    }

    int totalSize = 0;
    final entities = directory.listSync(recursive: true);

    for (final entity in entities) {
      if (entity is File) {
        totalSize += entity.lengthSync();
      }
    }

    return FileResult.success(totalSize);
  } catch (e, stack) {
    loge('Failed to get directory size for $path: $e\n$stack');
    return FileResult.failure(e.toString());
  }
}