我正在从 java 应用程序中写入一堆数据,这些数据由最终用户使用,可能是文件、控制台或任意监听器。如果允许用户指定他们想要如何使用这些数据,那就太好了。人们采取了什么方法来解决这类问题,有好的开源解决方案吗?我可以看到一些简单的事情,就像使用 log4j 和不同的附加程序等一样......
最佳答案
您是在谈论 Java 应用程序内的接口(interface)吗?
在这种情况下,只需提供一个 InputStream
/Reader
来读取数据或接受 OutputStream
/Writer
您写入数据的位置。
如果您正在谈论与外部程序的通信,那么请执行 UNIX 工具长期以来所做的操作:
- 从
stdin
读取 - 写入
stdout
这样用户就可以做任何他们想做的事情:
- 将其他命令的输出通过管道传输到您的代码
- 将文件内容通过管道输入到您的命令
- 通过键盘输入命令
- 将命令的输出通过管道输出到任何其他命令或文件
InputStream
/Reader
/OutputStream
/Writer
的想法基本上与应用于 Java API 的概念相同.
关于java - 通用 Java 输出库或模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1667805/