pqn*_*pqn 14 java inputstream bufferedinputstream
我有一个InputStream我需要在开头和结尾添加字符,并应该以另一个类型的变量结束InputStream.我怎么能轻易做到这一点?
Tom*_*son 35
你想要一个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));
Run Code Online (Sandbox Code Playgroud)
如果你有很多的字符添加,并且不希望将它们转换为字节集体,你可以把它们放在一个StringReader,然后用ReaderInputStream从下议院IO读取它们以字节为单位.但是你需要在你的项目中添加Commons IO才能做到这一点.准确的代码留给读者练习.
| 归档时间: |
|
| 查看次数: |
13944 次 |
| 最近记录: |