2012-08-09 101 views
1

是否可以在修改属性后将其转换为InputStream。将属性转换为输入流?

下面是一些代码,以澄清问题:

sftpConnection = new connectSFTP(host, user, pass, port); 
Properties ssProperties = new Properties(); 
InputStream in = null; 
try{ 
    in = sftpConnection.download(fileName, fileDirectory); 
    ssProperties.load(in); 
    //System.out.println("File Found"); 
    ssProperties.setProperty(key, value); 
    sftpConnection.upload(<<Need the new InputStream here>>, fileDirectory); 
    in.close();  
} 
catch(Exception ex) 
{ 
System.out.println("File Not Found"); 
} 

回答

8

当然 - 最简单的方法是创建一个ByteArrayOutputStream,保存到这一点,那么创建一个围绕结果的ByteArrayInputStream

ByteArrayOutputStream output = new ByteArrayOutputStream(); 
ssProperties.store(output, null); 
ByteArrayInputStream input = new ByteArrayInputStream(output.toByteArray()); 
sftpConnection.upload(input, fileDirectory);