该ChannelSftp
班有版本get()
和put()
方法不返回任何东西,或返回InputStream
/ OutputStream
。
使用返回流和逐字节读取/写入文件的方法,而不是使用easyget()
和put()
方法(在其中指定源路径和目标路径,然后让程序为您做所有事情)的用例是什么?
我的猜测是,如果您正在下载并播放视频/音频文件将是一种情况,但是如果仅将文件移至一台服务器或从另一台服务器移至另一台服务器该怎么办?那么使用流有什么意义吗?
这是文档:http :
//epaul.github.io/jsch-documentation/javadoc/com/jcraft/jsch/ChannelSftp.html#get(java.lang.String,%20java.lang.String)
与其他任何I / O接口一样,当您不处理文件而是内存中的数据时,带流的变体很有用。
例如,您可能已经根据用户输入制作了内容,并且想要上载。您不需要文件中的本地副本。因此,您可以将内存中的数据流传输到SFTP。
流也是有用的抽象。
如果要从文件上传或下载到文件,请使用带有路径的重载。在这种情况下,创建文件流是不必要的开销。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句