在Java中将字符添加到InputStream的开头和结尾
我有一个InputStream
我需要在其开头和结尾添加字符,并且应该以另一个type变量结尾InputStream
。我怎么容易做到这一点?
回答:
您需要一个SequenceInputStream和几个ByteArrayInputStream。您可以使用String.getBytes来为后者制作字节。SequenceInputStream很古老,因此使用起来有点笨拙:
InputStream middle ;String beginning = "Once upon a time ...\n";
String end = "\n... and they lived happily ever after.";
List<InputStream> streams = Arrays.asList(
new ByteArrayInputStream(beginning.getBytes()),
middle,
new ByteArrayInputStream(end.getBytes()));
InputStream story = new SequenceInputStream(Collections.enumeration(streams));
如果你有很多的字符添加,并且不希望将它们转换为字节 集体
,你可以把它们放在一个StringReader,然后用ReaderInputStream从下议院IO读取它们以字节为单位。但是您需要在项目中添加Commons
IO。确切的代码留给读者练习。
以上是 在Java中将字符添加到InputStream的开头和结尾 的全部内容, 来源链接: utcz.com/qa/405797.html