Write contents to buffer and file on disk.
Updates buffer contents and writes to file on disk. For files in database, creates backup before writing.
2. Create backup if file is in database (id > 0)
3. Write to file on disk asynchronously
4. Update file metadata (last_modified, last_viewed)
5. Save to database
6. Emit file.changed() signal
Usage:
try {
yield file.buffer.write(new_contents);
// File written and backup created (if needed)
} catch (Error e) {
// Handle error
}
| contents |
Contents to write |
| Error |
if file cannot be written |