繁体   English   中英

如何使用python将jar文件输出发送到json文件

[英]How to send jar file output to a json file using python

我有 jar 文件,执行时会在终端上打印输出,我不知道如何将 jar 文件输出作为 json 文件传递​​。

下面的代码只是在终端上打印 jar 文件输出

subprocess.Popen(['java', '-jar', '/home/myfolder/collect.jar'])

我在想下面但不知道从什么开始......

with open('collect.json', 'w') as fp:
    xxxxxxxxxxx

希望有人能进一步指教。 谢谢你。

你可以试试这样的

with open('collect.json','w') as fp :
  subprocess.Popen('java -jar .//home/myfolder/collect.jar',stdout=fp).wait()

有关更多信息,请参阅此问题How to get the output from .jar execution in python 代码?

我希望这有帮助。

这应该可以解决问题。 如果您查看子流程文档,您可以看到 check_output 运行带参数的命令并将其输出作为字节字符串返回。

import multiprocessing as mp
import subprocess

command = "java -jar /home/myfolder/collect.jar"

def runCommand(q):
    commandOutput = subprocess.check_output(command.split()).decode("utf-8")
    q.put(commandOutput)

q = mp.Queue()
commandProcess = mp.Process(target=runCommand, args=(q, ))
commandProcess.start()
output = q.get()
print(output)
with open('collect.json', w) as fp: 
    fp.write(output)

没有运行代码,但应该可以工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM