c# - 如何从 C# 执行 Java 程序?

标签 c# java

想知道是否有人知道在运行时从 C# 代码执行 Java 命令行程序的好方法?

它与执行 native .EXE 文件相同吗?

它是同步运行还是异步运行(这意味着我可能必须等待线程完成才能找到结果)

具体来说,我想从服务器端的 Web 应用程序调用一个小实用程序(恰好是用 Java 编写的)来对文本文件进行一些处理。我想等待它完成,因为在 Java 程序处理完文本文件后,我想抓取处理后的文本,并在 C# 应用程序中使用它。

最佳答案

var processInfo = new ProcessStartInfo("java.exe", "-jar app.jar")
                      {
                          CreateNoWindow = true,
                          UseShellExecute = false
                      };
Process proc;

if ((proc = Process.Start(processInfo)) == null)
{
    throw new InvalidOperationException("??");
}

proc.WaitForExit();
int exitCode = proc.ExitCode;
proc.Close();

关于c# - 如何从 C# 执行 Java 程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/873809/

相关文章:

c# - 使用 FileStream 创建文件会返回 InvalidOperationException

java - 我如何在 Spring AOP 中访问实际的方法参数名称?

java - 在Java中以最优化的方式比较Oracle的2个表之间的数据

Java:创建对象时出现 nullPointerException

c# - 代码重构,以消除代码重复

c# 如何让我的 gif 动画在图片框中循环

c# - 如何在 C# 中对包含每个用户的获胜和失败数据作为键的 json 进行排序?

c# - 如何使用 LINQ 更新列表中的值

java - ElasticSearch - 按两个不同字段分组

java - 如何让 Stripe 在 Play Framework 和 IntelliJ 中运行?