前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >nodejs的gridfs基本操作

nodejs的gridfs基本操作

作者头像
用户1141560
发布2017-12-22 17:21:51
9000
发布2017-12-22 17:21:51
举报
文章被收录于专栏:西安-晁州西安-晁州
代码语言:javascript
复制
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
mongoose.connect('mongodb://127.0.0.1/test');
var conn = mongoose.connection;
 
var fs = require('fs');

var Grid = require('gridfs-stream');
Grid.mongo = mongoose.mongo;
 
conn.once('open', function () {
  console.log('open');
  var gfs = Grid(conn.db);

  // 写文件
  var writestream = gfs.createWriteStream({
      filename: 'mongo_file.txt'
  });
  fs.createReadStream('./local.txt').pipe(writestream);

  writestream.on('close', function (file) {
    console.log(file.filename + ' Written To DB');
  });

  var fs_write_stream = fs.createWriteStream('./write.txt');
 
  // 读取文件
  var readstream = gfs.createReadStream({
      filename: 'mongo_file.txt'
  });
  readstream.pipe(fs_write_stream);
  fs_write_stream.on('close', function () {
      console.log('file has been written fully!');
  });

  // 根据文件名称
  gfs.remove({filename: 'mongo_file.txt'}, function (err) {
    if (err) return handleError(err);
    console.log('success');
  });

  // 根据fs.files._id删除
  gfs.remove({_id : '548d91dce08d1a082a7e6d96'}, function (err) {
    if (err) return handleError(err);
    console.log('success');
  });

  // 判断文件是否存在
  var options = {filename : 'mongo_file.txt'}; // 使用_id也可以
  gfs.exist(options, function (err, found) {
    if (err) return handleError(err);
    found ? console.log('File exists') : console.log('File does not exist');
  });

  // 获取文件基础信息
  gfs.files.find({ filename: 'mongo_file.txt' }).toArray(function (err, files) {
    if (err) {
      throw (err);
    }
    console.log(files);
  });
}); 
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-05-25 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档