1

我们有一个场景,我们试图解组一个 java 对象,将其转换为输入流并使用 JSCH API 将其 SFTP

基本上 -> 我们的目标是强制 jSCH 以 INPUTSTREAM 的形式推送对象,而不是将其转换为文件然后像下面的示例一样将其发送过来:

// create a session
session = jsch.getSession(ftpUserName, ftpHost, ftpPort);
channel = session.openChannel("sftp"); 
channel.connect(); 
ChannelSftp sftpTunnel = (ChannelSftp) channel; 

// push the file you created using the channel created by the session
File f = new File(fileToTransmit); 


>> **sftpTunnel.put(new FileInputStream(f), f.getName());** 

除了我们想要切换最后一行以使用普通旧的 InputStream 而不与任何文件关联。

根据 jSCH API - 不使用 FileInputStream 是可能的:

void  put(InputStream src, String dst)

关于我们将如何解决这个问题的任何想法?

我们可以使用 ObjectOutputStream 吗?有没有办法获取一个对象并将其解组并将其馈送到 Inputstream 而无需在中间创建文件?

谢谢

4

0 回答 0