writeBytesFile static method
Write raw bytes to fileName in the platform output directory.
Implementation
static Future<FileWriteResult> writeBytesFile({
required String fileName,
required Uint8List bytes,
String? subDirectory,
}) async {
if (kIsWeb) {
return FileWriteResult.fail(
'Direct file write is not supported on web. Use DownloadService.');
}
try {
final dir = await _resolveOutputDirectory(subDirectory);
final filePath = p.join(dir, fileName);
final file = File(filePath);
await file.writeAsBytes(bytes, flush: true);
return FileWriteResult.ok(file.path);
} on FileSystemException catch (e) {
return FileWriteResult.fail('FileSystemException: ${e.message}');
} catch (e) {
return FileWriteResult.fail('Unexpected error: $e');
}
}