Создайте пустой файл в узле.Джей?
сейчас я использую
fs.openSync(filepath, 'a')
но это немного сложнее. Есть ли "стандартный" способ создать пустой файл в узле.Джей?
4 ответа:
если вы хотите, чтобы файл будет пустым, то вы хотите использовать флаг:
var fd = fs.openSync(filepath, 'w');
что удалит файл, если он существует и создать его, если это не так.
оберните его в
fs.closeSync
звоните, если вам не нужен дескриптор файла, она возвращает.fs.closeSync(fs.openSync(filepath, 'w'));
https://github.com/isaacs/node-touch будет выполнять эту работу и, как инструмент UNIX, который он эмулирует, не будет перезаписывать существующий файл.
Если вы хотите, чтобы это было так же, как Unix touch я бы использовал то, что у вас есть
fs.openSync(filepath, 'a')
в противном случае 'w' перезапишет файл, если он уже существует, и 'wx' потерпит неудачу, если он уже существует. Но вы хотите обновить mtime файла, поэтому используйте "a" и ничего не добавляйте.