如何"修改"InputStream?我有一个文件作为输入,我想修改一些变量并转发一个新的InputStream.
例如,初始InputStream包含Hello $ {var}.然后我想用var ="world""修改"这个InputStream,产生一个InputStream Hello世界.
这样做的最佳做法是什么?谢谢.
Bal*_*usC 12
的java.io是一个和所有的装饰图案.利用它并创建一个类extends InputStream(可能DataInputStream或更好,一些Reader因为你实际上对字符感兴趣,而不是字节,但是ala),添加一个构造函数,它接受原始InputStream并覆盖read()方法来读取原始流,将其缓冲到一定程度(例如从第一个下一个${开始}),然后确定密钥并返回修改后的数据.
如果您调用新类FormattedInputStream,那么您可以返回new FormattedInputStream(originalInputStream)到最终用户,并让最终用户仍然只是分配并将其用作InputStream.
| 归档时间: |
|
| 查看次数: |
6675 次 |
| 最近记录: |