2013-08-05 61 views
0

目前,我有一个基本上运行可执行jar的批处理文件。从进度内进行Java调用4gl

就像这个...

java -jar foo.jar 

我有正在执行该批处理文件和管道出它返回到一个txt文件中的值进度代码。然后我阅读该文本文档并相应地解析信息。

但是,这是一种丑陋的处理方式,可能会导致许多问题。我基本上只是寻找进步的方式来执行操作系统命令,没有它写入文件和读回检索它的结果。

我正在OpenEdge 10.1C

DEFINE INPUT PARAMETER iJarInput AS CHARACTER NO-UNDO. 
    DEFINE OUTPUT PARAMETER oJarOutput AS CHARACTER NO-UNDO. 

    DEFINE VARIABLE cOut AS CHARACTER NO-UNDO. 
    DEFINE VARIABLE cCmd AS CHARACTER NO-UNDO. 

    ASSIGN 
     cCmd = batchFile + " " + iJarInput. 

    OS-COMMAND SILENT VALUE(cCmd). 

    INPUT FROM VALUE(outFile). 
    REPEAT: 
     IMPORT UNFORMATTED cOut. 
     oJarOutput = oJarOutput + cOut. 
    END. 

回答