[英]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.