findAvailableFileName function

Future<String> findAvailableFileName(
  1. String path
)

Gets an available file name to download the file to this location

Implementation

Future<String> findAvailableFileName(String path) async {
  final baseName = p.basenameWithoutExtension(path);
  final fileExtension = p.extension(path);
  final dirName = p.dirname(path);

  int i = 1;
  String fileName = '$dirName${Platform.pathSeparator}$baseName$fileExtension';
  while (await File(fileName).exists()) {
    fileName = '$dirName${Platform.pathSeparator}$baseName($i)$fileExtension';
    i++;
  }
  return fileName;
}