簡體   English   中英

用Java捕獲perl輸出

[英]capture perl output with java

好吧,我馬上了解一下事情的實質:

我想從Java應用程序運行Perl腳本(通過ProcessBuilder),然后將解析一個html頁面並找出一些必需的信息。 然后,我想將該信息傳遞我的Java應用程序,並在JTextArea中顯示該信息。

我對perl的了解非常有限。 我最初的想法是將這些數據寫入txt文件,然后使用我的java程序讀取該文件,然后可以很容易地將其顯示到JTextArea。 但是,與僅返回字符串相比,這似乎是一個丑陋的解決方案。

如果有更好的方法,請告訴我。 也許是一種與我所想完全不同的方法。 謝謝,

Aelfhere

我想你想的東西像這樣

您只能通過使用某種類型的進程間通信來傳遞進程之間的字符串:管道或共享內存或使用網絡。

為什么您不能在Java中做您想在Perl中做的事情?

當您使用ProcessBuilder時,您將實例化一個Process Object,它是批處理執行的Java表示形式

最終,您可以通過Java API掛鈎流程流。

從Process JAVA API中提取:

  • abstract InputStream getErrorStream()獲取子流程的錯誤流
  • abstract InputStream getInputStream()獲取子流程的輸入流
  • abstract OutputStream getOutputStream()獲取子流程的輸出流

如果將perl腳本寫在標准輸出流上,則可以讀取該輸出。

通常,如果進程未在標准輸出流上寫入,那么您將無法讀取它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM