NodeJS Program to Durable Write With fsync with Explanation
NodeJS
Hard
File System & Paths
20 views
1 min read
90 words
This problem helps you practice core NodeJS fundamentals in a practical way. It builds intuition around done, fsync, file. Let’s break it down step by step so you can implement it confidently.
Problem Statement
Write text to a file and fsync so it is flushed, then print DONE.
Input Format
stdin: file path.
Output Format
Print DONE/FAIL.
Constraints
Use fs.openSync and fs.fsyncSync.
Code Solution
This explanation is written for learning purposes and to help beginners understand the concept clearly.
const fs = require('fs');
const p = fs.readFileSync(0, 'utf8').trim();
if (!p) process.exit(0);
try {
const fd = fs.openSync(p, 'w');
fs.writeFileSync(fd, 'meetcode', 'utf8');
fs.fsyncSync(fd);
fs.closeSync(fd);
console.log('DONE');
} catch (e) {
console.log('FAIL');
}
Common Mistakes
- Misreading input/output format.
- Not handling constraints and edge cases.
- Off-by-one errors in loops.
- Forgetting to reset variables between test cases (if any).
Solution Guide
Problem
Write text to a file and fsync so it is flushed, then print DONE.
Input / Output
Constraints
Use fs.openSync and fs.fsyncSync.
Details
Common Mistakes
- Misreading input/output format.
- Not handling constraints and edge cases.
- Off-by-one errors in loops.
- Forgetting to reset variables between test cases (if any).
Official Solution
const fs = require('fs');
const p = fs.readFileSync(0, 'utf8').trim();
if (!p) process.exit(0);
try {
const fd = fs.openSync(p, 'w');
fs.writeFileSync(fd, 'meetcode', 'utf8');
fs.fsyncSync(fd);
fs.closeSync(fd);
console.log('DONE');
} catch (e) {
console.log('FAIL');
}
Solutions (0)
No solutions submitted yet. Be the first!