openWrite method

Future<FileSaverSink?> openWrite({
  1. required String fileName,
  2. required FileType fileType,
  3. SaveLocation? saveLocation,
  4. String? subDir,
  5. int? totalSize,
  6. ConflictResolution conflictResolution = ConflictResolution.autoRename,
})

Opens a streaming write session to an auto-resolved location.

Platforms: Windows · Linux · Web (buffer fallback) · Android · iOS · macOS

Returns a FileSaverSink that accepts incremental chunks via add. Call FileSaverSink.close to finalize and obtain the saved file Uri.

Returns null if conflictResolution is ConflictResolution.skip and the target file already exists.

totalSize is optional. When provided, FileSaverSink.progress emits per-chunk progress (0.0–1.0). FileSaverSink.bytesWritten always emits.

Implementation

Future<FileSaverSink?> openWrite({
  required String fileName,
  required FileType fileType,
  SaveLocation? saveLocation,
  String? subDir,
  int? totalSize,
  ConflictResolution conflictResolution = ConflictResolution.autoRename,
}) {
  throw UnimplementedError('openWrite is not implemented on this platform');
}