Articles of fs

node.js修改文件数据stream?

我需要修改一个大的数据文件到另一个目的地。 fs.readFile和fs.writeFile非常慢。 我需要逐行阅读,修改并写入新文件。 我发现这样的事情: fs.stat(sourceFile, function(err, stat){ var filesize = stat.size; var readStream = fs.createReadStream(sourceFile); // HERE I want do some modifications with bytes readStream.pipe(fs.createWriteStream(destFile)); }) 但如何进行修改? 我试图用data事件获取数据 readStream.on('data', function(buffer){ var str = strToBytes(buffer); str.replace('hello', ''); // How to write ??? }); 但不知道如何写入文件:

将video上传到节点中的url

在我的应用程序中,我想发布一个video到多个networking(fb,twitter …),我正在上传video到cloudinary,它发回的url,我用来张贴到fb。 对于Twitter,无法通过url发布video。 有没有其他办法可以做到这一点? 我的服务器尺寸很低,如1-2GB,所以我不能下载video到我的服务器,然后创build一个stream上传到Twitter。 我担心,如果3-4名用户开始上传,那么我的服务器将崩溃,内存不足。 任何build议使用twit包或简单的HTTP请求是受欢迎的。 谢谢

错误:第5行的列数不一致 – parsingCSV时

我试图parsing一个CSV文件,使用制表符作为列分隔符。 我得到下面的错误: Error: Number of columns is inconsistent on line 5 at Parser.__push (/Users/mesamhaider/Desktop/workspace/Order_CSV_Parsing_Tool/node_modules/csv-parse/lib/index.js:248:14) at Parser.__write (/Users/mesamhaider/Desktop/workspace/Order_CSV_Parsing_Tool/node_modules/csv-parse/lib/index.js:469:20) at Parser._transform (/Users/mesamhaider/Desktop/workspace/Order_CSV_Parsing_Tool/node_modules/csv-parse/lib/index.js:182:14) at Parser.Transform._read (_stream_transform.js:190:10) at Parser.Transform._write (_stream_transform.js:178:12) at doWrite (_stream_writable.js:371:12) at writeOrBuffer (_stream_writable.js:357:5) at Parser.Writable.write (_stream_writable.js:274:11) at ReadStream.ondata (_stream_readable.js:626:20) at emitOne (events.js:115:13) 我正在使用的代码如下所示: const fs = require('fs'); const parse = require('csv-parse'); fs.createReadStream('../in/*.csv') .pipe(parse({delimiter : ' '})) […]

将从createWriteStream创build的JSON文件拆分为Node中的多个JSON文件

我有这个节点脚本使用fs.createWriteStream将大对象写入JSON文件 const stream = fs.createWriteStream("delimit.json"); stream.once("open", fd => { for (let object in finalJson) { //finalJSON is the object stream.write( '{ "index" : { "_id" : "' + finalJson[object]["PID Number"] + '" } }\n' ); stream.write(JSON.stringify(finalJson[object]) + "\n"); } stream.end(); }); 有没有办法将创build的JSON文件分割成10MB的JSON文件? 谢谢

如何将不完整的部分path传递给Node中的fs.existsSync?

我想调用像fs.existsSync('*.zip')来检查所有.zip文件。 但是,从我的testing,似乎只能使用确切的path和文件名。 我必须首先从目录抓取所有文件名,还是有办法用existsSync和某种正则expression式在一行中existsSync ? 谢谢!

所有的file upload快速js使用busboy后回电

我有一个快速申请与多个上传。 我正在使用busboy访问multipart。 我必须将文件发送到外部API服务器。 目前,我正在使用fs.createWriteStream()将所有file upload到目录,然后在使用fs.createReadStream读取文件fs.createReadStream ,将文件发送到外部API服务器。 上传所有文件并读取所有文件后,如何获得callback函数? 否则,我可以直接将文件发送到外部服务器,而无需将其保存在快速服务器中? 这是我的代码, exports.create(req, res, next) => { req.pipe(req.busboy); let fileCount = 0; let filesToSent = []; req.busboy.on('file', (fieldname, file, filename, encoding, mimetype) => { let fileNameArray = filename.split('.'), fileExtension = fileNameArray[fileNameArray.length – 1], d = new Date(), fileNameToSave = d.getFullYear().toString() + (d.getMonth() + 1).toString() + d.getDate().toString() + d.getTime().toString() […]

Webpack,(npm)绑定,并且要求(`fs`)不能一起工作

目前正在使用一个用于通过odbc INSERT语句向SQL数据库提交用户信息的SPA,但是我的本地环境没有正确构build,我无法弄清楚为什么。 链接到npm的绑定: https ://www.npmjs.com/package/bindings macOS version 10.12.6 node -v v8.8.1 webpack -v 3.8.1 截至目前,我可以使用node post.js成功地发布到我的数据库。 但是,当我运行grunt build我收到以下错误: WARNING in ./node_modules/bindings/bindings.js 81:22-40 Critical dependency: the request of a dependency is an expression WARNING in ./node_modules/bindings/bindings.js 81:43-53 Critical dependency: the request of a dependency is an expression ERROR in ./node_modules/bindings/bindings.js Module not found: Error: Can't resolve […]

节点具有完整path的asynchronousmkdir

我目前使用shell.js的mkdir -p在我的node.js代码是同步的。 在shell.mkdir中使用'-p'来创build一个完整path的目录,这是fs.mkdir无法做到的。 if(fs.existsSync(archivePath + "\\" + site + "\\" + year)){ // check if site folder exists console.log(archivePath + "\\" + site + "\\" + year + " exists"); } else { console.log(archivePath + "\\" + site + "\\" + year + " does not exist… creating full path now"); shell.mkdir('-p' , archivePath + […]

Node.js:如何检查在文件系统中search的参数?

请求示例: node index.js –DIR="/Downloads" –PATTERN=\.js –TYPE=F –MIN-SIZE=1G params的条件: –TYPE:[D | F] D – 目录,F – 文件 –PATTERN:正则expression式来testing文件/目录名称 – 最小文件大小[B | K | M | G] 我可以使用哪些节点 fs方法来检查这些参数是否符合条件?

无法使用filesaver.js打开下载的文件

错误:PowerPoint在abc.pptx中发现内容有问题无法打开文件,文件可能被损坏。 客户端代码(使用filesaver.js保存文件) $http.get(url) .then(function(resp) { var file = new Blob([resp.data], {type : 'application/vnd.openxmlformats-officedocument.presentationml‌​.presentation'}); saveAs(file, "abc.pptx"); }, function(error) { return $q.reject(error.data.message); }); 服务器端代码 app.get('/..', function (req, res) { stream = fs.createReadStream(filePath); stream.pipe(res); });