java - Java 中带有 "events"的输入流

标签 java

我在Java中遇到一种情况,我有一个返回InputStream的方法,并且我想这样做,以便每当人们调用该InputStream上的关闭函数时,代码中的其他地方就会收到通知(例如回调) )。

但是,我返回的实际 InputStream 是库调用返回的 InputStream 的子类,因此我无法直接控制它。

我当前的解决方案是创建一个InputStream的子类,它有一个InputStream成员变量,该变量由构造函数中的库调用实例化,我只是重写InputStream的方法,让它们使用该变量的方法,另外 close() 函数做了一些额外的事情。

这可行,但我想减少必须创建一个全新类的开销,重写所有必要的方法,这样我就可以在调用 close() 时执行单个事件。

最佳答案

Apache Commons IO有多种过滤 I/O 流,可以更轻松地执行您所描述的操作。

关于java - Java 中带有 "events"的输入流,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13169206/

相关文章:

java - 无法让RecyclerView水平显示Android Java

Java - CSVReader 在值中用逗号正确分割

java - 错误: cannot find symbol for correctly used methods (I think)

java - 从 Java 运行 shell 脚本(包含 wget)

java - Android Studio 确定 GitHub 的凭据无效

java - 为什么Java会有NullPointerException?

java - 在集群环境中使用 Quartz

java - 为什么 Ruby 和 Python 长除法与 GMP 和 Java BigInteger 不同?

java - 给定 WSDL 的 Web 服务客户端

java - 为什么当 set 为 null 时 set1 也为 null?