Source File: cbhell.js
const fs = require('fs');
const read_file = (fname, cb) => {
fs.stat(fname, (err, stats) => {
if(err) {
cb(err, null);
} else {
fs.open(fname, 'r', (err, fd) => {
if(err) {
cb(err, null);
} else {
let inbuf = Buffer.alloc(stats.size);
fs.read(fd, inbuf, 0, stats.size, null, (err, bytesRead, buffer) => {
if(err) {
cb(err, null);
} else {
cb(err, buffer);
}
});
}
});
}
});
}
read_file('test.txt', (err, result) => {
if(err) {
console.log(err);
} else {
console.log(`Result is ${result.toString()}`);
}
});