我从Jsch channelSFTP获取输入流,如下所示。
ChannelSftp channelSftp = (ChannelSftp)channel;
InputStream input=channelsftp.get(unixPath);//unixPath is path to my file which is on SFTP server
我必须将文件附加在Spring javaMail附件中的unixPath
中。但是,当我看到Spring JavaMail addAttachment()
方法的API时,它只需要InputStreamSource
或Datasource
。
我的问题是我无法从inputStream中获取InputStreamSource
或Datasource
,我从SFTP频道获取该内容。如何从上面获取InputStreamSource
或Datasource
InputStream的?提前致谢。
答案 0 :(得分:25)
从文档中,InputStreamSource
是一个界面。它的一个实现是InputStreamResource
,它有一个接收InputStream
的构造函数。 Here is the JavaDoc for it
你应该能够设置你的电话:
addAttachment("Not porn", new InputStreamResource(inputStream));