如何使用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上,当以附加模式打开文件时,位置写入不起作用。 内核忽略位置参数并始终将数据追加到文件的末尾。