我想知道是否可以将 C/C++ dll 的 STDOUT 连接到 JTextArea?问题是,我正在使用第 3 方 DLL,因此我无法手动更改它们。 基本上我有我的 Java 小程序,然后是我自己的 DLL,它加载和管理第 3 方 DLL,它是第 3 部分 DLL,它执行 printf() 之类的事情。它在调试期间出现在 Eclipse 控制台中,但我希望它出现在 JTextArea 或其他东西中。
编辑:澄清一下,我在我的 win32 DLL 中使用 std::cout。
谢谢
最佳答案
什么是标准输出?如果它是 Posix 文件句柄,那么你可以做的不多 做。你必须关闭它,然后打开一个临时文件,写入它, 然后在Java部分阅读它。如果您实际上正在使用 std::cout 对于输出,可以(暂时)更改 streambuf 它使用 stringbuf,然后将生成的字符串传递给 Java。
关于java - JNI - 将 STDOUT 连接到 JTextArea?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5483068/