首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

为什么我的Java程序不能读取Perl的STDERR?

您好!您的问题是关于Java程序无法读取Perl的STDERR。这是因为Java和Perl在处理错误输出时有所不同。

Java中,可以使用System.err来获取标准错误输出流。而Perl中,错误输出默认是通过STDERR文件句柄输出的。要在Java中读取Perl的STDERR,您需要将Perl脚本的STDERR重定向到STDOUT,然后在Java中读取STDOUT。

您可以在Perl脚本中添加以下代码来实现这一点:

代码语言:perl
复制
open(STDERR, ">&STDOUT");

这将把Perl的STDERR重定向到STDOUT,这样Java就可以读取到错误输出了。

另外,您还可以使用Java的ProcessBuilder来启动Perl脚本,并通过Process对象的getInputStream()getErrorStream()方法分别读取STDOUT和STDERR。

希望这个答案能够帮助您解决问题!如果您还有其他问题,请随时提问。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的合辑

领券