2016-04-01 8 views
1

これは私の最初のgridfs-streamの仕事です。ローカルディレクトリ(C:\ work \ node \ test.txt)からファイルを読み込み、gridfs-streamに書き込もうとしています。このファイルを実行するとエラーが発生しますMongo gridfs-stream

C:\ work \ node> node Test events.js:85 throw er; //未処理の 'エラー' イベント ^ エラー:ENOENT、オープン 'C:\作業\ノード\作業 頌歌のest.txt' エラーで (ネイティブ)

私はのtry-catchをも使用しようとしましたが、同じエラーがありました。誰かが私が作っている間違いを見て指摘することはできますか?ありがとう。ここ

と私のコードは..です

var fs = require("fs"), 
    mongo = require("mongodb"), 
    Grid = require("gridfs-stream"), 
    gridfs, 
    writeStream, 
    readStream, 
    buffer = ""; 

    mongo.MongoClient.connect("mongodb://localhost:27017/test", function (err, db) { 
    // "use strict"; 
    gridfs = Grid(db, mongo); 

    // write file 
    writeStream = gridfs.createWriteStream({ filename: "test.txt" }); 
    fs.createReadStream("C:\work\node\test.txt").pipe(writeStream); 
    }); 
+1

、[OK]をクリックして機能するようになりました。私はファイルパスにエスケープ文字を認識しませんでした。私がそれを修正すると、それは動作します。私はあまりにも早く銃を飛ばしたと思う:) – JBone

+0

これは私の修正されたファイルパスがfs.createReadStream( "C:\/work \/node \ /test.txt")に見える方法です。 – JBone

+0

あなたはそれを答えとして入れ、それを自分で受け入れるべきです。誰か他の人を助けるかもしれない:) – war1oc

答えて

0

これは修正されたファイルパス

var fs = require("fs"), 
    mongo = require("mongodb"), 
    Grid = require("gridfs-stream"), 
    gridfs, 
    writeStream, 
    readStream, 
    buffer = ""; 

    mongo.MongoClient.connect("mongodb://localhost:27017/test", function (err, db) { 
// "use strict"; 
    gridfs = Grid(db, mongo); 

    // write file 
    writeStream = gridfs.createWriteStream({ filename: "test.txt" }); 
    **fs.createReadStream("C:\/work\/node\/test.txt").pipe(writeStream);** 
});