我有一个相当简单的调用来编写一个文件(如果需要,创建目录结构)。
writeFileSync(fileName, output, { flag: "w" });
在Mac OS X上,这可以正常工作......但是,在Windows上,我收到ENOENT错误:
fs.js:549
return binding.open(pathModule._makeLong(path), stringToFlags(flags), mode);
Error: ENOENT: no such file or directory, open 'C:\mydir\myfile.json'
at Error (native)
at Object.fs.openSync (fs.js:549:18)
at Object.fs.writeFileSync (fs.js:1156:15)
at ...
at FSReqWrap.oncomplete (fs.js:82:15)
我真的不知所措b / c列出的文件路径是正确有效的。而且,这完全符合我在Mac OS X上的要求。
非常感谢任何帮助。 谢谢!
答案 0 :(得分:2)
我愚蠢地使用
mySimpleArrayOfStrings.join('/'); // not the way to build a path
而不是非常有用的
path.join(...); // This is much better! Use this...
通过不使用此路径,我没有考虑Windows中不同的路径分隔符。
非常感谢@MykolaBorysyuk!