首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >转换可读流以将其保存为本地文件

转换可读流以将其保存为本地文件
EN

Stack Overflow用户
提问于 2018-12-19 14:27:50
回答 1查看 5.1K关注 0票数 2

我使用ssh2-sftp-client从远程服务器获取文件。我正在获取可读流中的文件。我想把这个可读的流转换成想要的文件( png文件的sample.png文件,文档文件的sample.doc文件等等)

这是我的代码-

代码语言:javascript
复制
let Client = require('ssh2-sftp-client');
let sftp = new Client();
 sftp.connect({
    host: sftpCredentials.host,
    port: sftpCredentials.port,
    username: sftpCredentials.username,
    password: sftpCredentials.password
}).then(res => sftp.list('/'))
.then(res => {
     const file = await sftp.get('/sample.png');

})

我想将此文件保存在本地。文件是一个可读的流,如下所示-

代码语言:javascript
复制
ReadStream {_readableState: ReadableState, readable: true, domain: null, _events: Object, _eventsCount: 3, …}
    _events:Object {end: , error: , readable: }
    _eventsCount:3
    _maxListeners:undefined
    _readableState:ReadableState {objectMode: false, highWaterMark: 65536, buffer: BufferList, …}
    autoClose:true
    destroyed:false
    domain:null
    end:undefined
    flags:"r"
    handle:Buffer(4) [0, 0, 0, …]
    mode:438
    path:"/sample.png"
    pos:131072
    readable:true
    readableHighWaterMark:65536
    sftp:SFTPStream {_readableState: ReadableState, readable: true, domain: null, …}
    start:undefined
    __proto__:Readable {open: , _read: , destroy: , …}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-19 15:16:58

因为file是一个可读的流,所以您可以尝试

代码语言:javascript
复制
let Client = require('ssh2-sftp-client');
    let fsv=vrequire('fs');
    let sftp = new Client();
     sftp.connect({
        host: sftpCredentials.host,
        port: sftpCredentials.port,
        username: sftpCredentials.username,
        password: sftpCredentials.password
    }).then(res => sftp.list('/'))
    .then(async res => {
         const file = await sftp.get('/sample.png');
         const ws=fs.createWriteStream('sample.png');
         file.pipe(ws);
         file.on('end',()=>console.log('done'));
    })
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53845667

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档