dhat
@dhat

Почему fs модуль не создает папку?

Простейший скрипт. Пишет в консоли что не может создать папку. Когда создаю папку вручную - все работает.

var express = require('express')
var path = require('path')
var request = require('request')
var cheerio = require('cheerio')
var fs = require('fs')
var app = express()
var port = 8000

var destination = fs.createWriteStream('./downloads/google.html')
var url = 'http://google.com'
request(url).pipe(destination)

app.listen(port)
console.log('Server listening on: ' + port);
  • Вопрос задан
  • 192 просмотра
Пригласить эксперта
Ответы на вопрос 2
@LiguidCool
Вы имеете в виду downloads не создается автоматом? Насколько помню это нормальное поведение, её надо проверять на присутствие и создавать ручками.
Ответ написан
Комментировать
VoidVolker
@VoidVolker Куратор тега JavaScript
Dark side eye. А у нас печеньки! А у вас?
Потому что createWrite stream - это именно создание потока для записи и не более того. И аналогично со всеми остальными функциями в модуле fs - если это не создание каталога, то функция и не будет создавать каталог. Поэтому, перед записью файла необходимо убедиться в наличии всех каталогов к этому файлу. Расширений к модулю fs полно, например: https://github.com/jprichardson/node-fs-extra - там есть функции для автоматического создания каталогов.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы