Создать пустой файл в Node.js? - программирование
Подтвердить что ты не робот

Создать пустой файл в Node.js?

В настоящее время я использую

fs.openSync(filepath, 'a')

Но это немного сложно. Есть ли стандартный способ создания пустого файла в Node.js?

4b9b3361

Ответ 1

Если вы хотите, чтобы файл был пустым, вместо этого вы хотите использовать флаг 'w':

var fd = fs.openSync(filepath, 'w');

Это будет обрезать файл, если он существует, и создать его, если это не так.

Оберните его в вызов fs.closeSync, если вам не нужен дескриптор файла, который он возвращает.

fs.closeSync(fs.openSync(filepath, 'w'));

Ответ 2

https://github.com/isaacs/node-touch выполнит задание и, как и инструмент UNIX, который он эмулирует, не перезапишет существующий файл.

Ответ 3

Если вы хотите, чтобы он был таким же, как и при подключении к UNIX, я использовал бы то, что у вас есть fs.openSync(filepath, 'a'), иначе "w" перезапишет файл, если он уже существует, и "wx" завершит сбой, если он уже существует. Но вы хотите обновить файл mtime, поэтому используйте 'a' и ничего не добавляйте.

Ответ 4

Здесь асинхронный путь, используя "wx", поэтому он не работает в существующих файлах.

var fs = require("fs");
fs.open(path, "wx", function (err, fd) {
    // handle error
    fs.close(fd, function (err) {
        // handle error
    });
});