私はSlackチームからログを保存するプログラムを作成しようとしています。私はほとんどの作業を行っていますが、これまでにfs.appendFile()
を使用することができませんでした。文書が存在しない場合はファイルを作成すると主張しているので、事前にfs.exists()
またはfs.access()
を使用しないでください。 ENOENTエラー。Node.jsでファイルを作成できませんfs.appendFile
これは私の関数である:
var storeLog = function (username, type, channelName, message) {
var pathArr = [loggingDir, type, channelName];
var path = pathArr.join("/") + ".log";
var fullMessage = username + ": " + message;
fs.appendFile(path, fullMessage + "\r\n", function (err) {
if (err && globalSettings.debugMode) {
console.error("Error saving log:\n", err);
}
else if (globalSettings.debugMode) {
console.info("Appended to " + path);
console.info(fullMessage);
}
});
};
(globalSettings.debugMode
が真である)
err
変数は、この結果を持っています
{ Error: ENOENT: no such file or directory, open 'D:\path\in\settings\Direct Message\username.log'
at Error (native)
errno: -4058,
code: 'ENOENT',
syscall: 'open',
path: 'D:\\path\\in\\settings\\Direct Message\\username.log' }
ターゲットディレクトリを最初に作成する必要があります。 –