writefilesync write not nodejs node example create javascript node.js

javascript - not - Comprobando si writeFileSync ha escrito correctamente el archivo



write file js (2)

De acuerdo con el código source-code fs.writeFileSync no devuelve nada.

Lanza un objeto Error si algo sale mal. Por lo tanto, debe escribir fs.writeFileSync(file, content, ''utf8''); dentro de un bloque try-catch .

Tengo una ruta simple definida con express.js :

exports.save = function (request, response) { var file = request.body.file; var content = request.body.content; var saved = false; if (fs.existsSync( file )) { saved = fs.writeFileSync(file, content, ''utf8''); } console.log( saved ); // undefined or false, never true response.send(saved ? 200 : 500, saved ? ''saved'' : ''error''); // 500, error };

Es if (typeof saved === ''undefined'') saved = true; la única opción? Se siente hacky.


fs.writeFileSync no devuelve ningún valor; si no ocurre ninguna excepción, eso significa que se guardó correctamente; de otro modo fallado.

es posible que desee probar la versión asíncrona de archivo leído

fs.exists(file, function (exists) { if (exists) { fs.writeFiles(file, content, ''utf-8'', function (err) { if (err) { response.send("failed to save"); } else { response.send("succeeded in saving"); } } else { console.log(''file does not exists''); } }