如何使用fs of nodejs将文件写入父文件夹?

我想写一个文件到当前的脚本文件夹的父文件夹(有时子目录到那个父文件夹)?

我应该如何写path?

这可以工作吗?

fs.writeFile(__dirname + '../sibling_dir/file.txt', 'test'); 

是的,这应该工作得很好。 我看到的主要问题是你没有/之间的dirname和path。

所以你现在拥有的更像是:

 fs.writeFile('/tmp/module../sibling_dir/file.txt', 'test'); 

尝试这个:

 fs.writeFile(__dirname + '/../sibling_dir/file.txt', 'test'); 

我试过了

 fs.writeFile('../test.txt', 'test'); 

这样可行!

http://nodejs.org/api/fs.html#fs_fs_write_fd_buffer_offset_length_position_callback

fs.write(fd,buffer,offset,length,position,callback)#将缓冲区写入由fd指定的文件。

偏移量和长度决定了要写入的缓冲区的部分。

位置是指应该写入数据的文件开始处的偏移量。 如果位置为空,则数据将写入当前位置。 参见pwrite(2)。

callback将被给出三个参数(err,written,buffer),其中写入指定了从缓冲区写入了多less个字节。

请注意,在不等待callback的情况下,在同一个文件上多次使用fs.write是不安全的。 对于这种情况,强烈build议使用fs.createWriteStream。

在Linux上,当以附加模式打开文件时,位置写入不起作用。 内核忽略位置参数并始终将数据追加到文件的末尾。