|
|
1
3
注意:我没有试过这个答案;YMMV。
posix方法
因此,您可以创建自己的JNI库,只需将流重定向到一个文件中。 然而 ,这项工作有几个严重的障碍:
最后一点是迄今为止最大的:stdio写入操作系统级的文件描述符。您必须创建一些Java级代码来读取该描述符并写入日志。我的第一个想法是,你必须使用一个命名管道,然后旋转一个新的Java线程来读取那个管道。但是,这将无法移植到不同的操作系统,并且您将在程序的配置中管理管道名称吗? 假设这是一个服务器程序,本身不处理标准IO流,我认为您的最佳解决方案是使用控制台记录器配置log4j,并简单地将所有控制台输出重定向到一个文件。 或者与编写库的人员交谈,让他们添加可配置的日志记录。 |
|
|
2
-1
我的C有点生疏,但可能有,因为您可以通过JNI从C中调用prinstream方法。但是当流被写入时,您必须找到一种方法来钩住它。 更新:这可能有助于您从C: http://www.gnu.org/software/hello/manual/libc/Hook-Functions.html |
|
|
user29759326 · 如何返回递归函数中的最后一个值? 1 年前 |
|
|
malife89 · 将java中的字符串读取为正确的日期格式 1 年前 |
|
|
Tim · 在java中,有没有更快的方法将字节数组写入文件? 1 年前 |
|
|
rudraraj · java中未声明最终变量 1 年前 |
|
|
Bala Ji · 以下BFS的实施效率如何? 1 年前 |