我正在将开源 c 程序与 Java 程序集成。
我曾尝试使用 JNI,但这不是我想做的适当方式。
c程序的用法如下。
program_name argument1 [-a maxSize] [-o maxSizeO] ...... [-P] \
in.txt in1.dat in2.dat in1.tmp in2.tmp out.txt
我可以像这样使用 ProcessBuilder 类运行这个程序。
ProcessBuilder pb = new ProcessBuilder("program_name",
"argument1",
"-a", maxSize,
"-o", maxSizeO.........,
int2.tmp, out.txt);
Process p = pb.start();
但是有很多可选参数,所以它看起来像是维护我的 Java 程序的错误方法。
有什么想法可以通过软件设计的好方法来解决这个问题吗?
提前致谢。