In Node.js, I am attempting to write into the Documents
folder of the user (on macOS):
var logger = fs.createWriteStream('~/Documents/somefolderwhichexists/'+title+'.txt');
This gives me an error, but I am not sure what is wrong. The error says:
Uncaught Exception: Error: ENOENT: no such file or directory
How could I use an absolute path here? Or what is my mistake?
In Node.js, I am attempting to write into the Documents
folder of the user (on macOS):
var logger = fs.createWriteStream('~/Documents/somefolderwhichexists/'+title+'.txt');
This gives me an error, but I am not sure what is wrong. The error says:
Uncaught Exception: Error: ENOENT: no such file or directory
How could I use an absolute path here? Or what is my mistake?
Share Improve this question edited Dec 26, 2017 at 14:29 Paulo Mattos 19.3k10 gold badges79 silver badges86 bronze badges asked May 8, 2017 at 23:22 George WelderGeorge Welder 4,05511 gold badges44 silver badges75 bronze badges1 Answer
Reset to default 17The ~
is a shorthand, to your home directory, expanded by the Bash shell. You need to use a fully defined path or get the current user name (or home path) dynamically.
To get the current user home path, ty this:
var home = require("os").homedir();
var logpath = home + '/Documents/somefolderwhichexists/' + title + '.txt';
var logger = fs.createWriteStream(logpath);