writeTextFile static method
Write content as UTF-8 text to fileName in the platform output dir.
subDirectory is an optional relative sub-path (e.g. 'odoo/views').
Implementation
static Future<FileWriteResult> writeTextFile({
required String fileName,
required String content,
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.writeAsString(content, 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');
}
}