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

科马尔·班萨尔

我正在使用ssh2-sftp-client从远程服务器获取文件。我正在以可读流的形式获取文件。我想将此可读流转换为所需的文件(sample.png作为png文件,sample.doc文件作为doc文件等)

这是我的代码-

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');

})

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

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: , …}
lx1412

作为file可读流,您可以尝试

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'));
    })

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

下载对象并将其另存为人类可读的文本文件

如何将文件另存为 zip 而不将其保存到本地文件夹

将边界框区域转换为遮罩并将其另存为PNG文件

将准备好的布局转换为位图并将其另存为文件中的图像

如何将我的输出转换为 .JSON 并将其另存为 .json 文件

打开Azure StorageStreamDownloader而不将其另存为文件

如何将其转换为数据框并将其另存为 csv?

python如何读取tsv文件,将其清理并另存为新文件?

在Windows中将文件另存为.RProfile

如何获取文件并另存为域名?

Rails将文件另存为图像

将回复另存为文件

将pdf文件另存为blob

将图另存为EMF文件

另存为不保存文件

VBA另存为文件路径

将.maf文件另存为表

无法另存为CSV文件

使用Rotativa将PDF文件另存为字节数组或流

如何在Linux中提取行并将其另存为文本文件

给定一个ppt文件,是否可以将其另存为模板?

为什么将char'。'保存到文件中将其另存为'?'?

我如何从TradingView图表中获取数据并将其另存为CSV文件?

获取日期并将其另存为文件名python

如何使用OpenOffice打开Excel文件并将其另存为CSV

运行打开文件并将其另存为值的宏的宏-运行时错误1004

MATLAB-如何从.fig文件中裁剪图像的某些部分并将其另存为.mat?

OSX-使用Swift加载图像并将其另存为较小的png文件

打开 HTML 文件并将其另存为字符串变量的最简单方法