【问题标题】:Is it possible to run prolog from C#?是否可以从 C# 运行 prolog?
【发布时间】:2015-09-15 04:34:47
【问题描述】:

我想从 C# 调用一个 prolog 程序。那可能吗? 我通过 c# 处理用户输入并写入文件。然后我想调用一个使用该文件的 prolog 程序,然后我想通过 c# 向用户显示文件的内容。

【问题讨论】:

    标签: c# prolog


    【解决方案1】:

    是的,如果您不想将两个程序链接到单个二进制文件,而只是让一个 (C#) 调用另一个 (prolog),则可以这样做。对于任何其他语言,您也可以在您的计算机上运行。

    如果你的数据交换基于文件,你需要一个文件从 C#->prolog 发送数据,也许还有第二个文件来返回结果 (prolog->C#)

    你会在 SO 上找到很多让 C# 调用外部程序的示例(例如 Launching an application (.EXE) from C#?

    如果 prolog 不允许您在调用它时将文件名作为参数传递,您将不得不使用固定文件名:

    C#写一个request.txt C#调用prolog程序 Prolog 读取 request.txt 并创建 response.txt

    Reading from files 应该被语言覆盖,这取决于“方言”,即使reading command line parameters 也应该是。

    【讨论】:

    • 问题是我无法通过 process.arguments 将参数传递给 prolog shell。
    • @signal107 我不太了解 prolog 或您使用的特定 prolog 版本,但应该有解决此问题的方法。请看看我上次的编辑。
    【解决方案2】:

    如果你使用 SWI-Prolog,你应该 google SWI-Prolog interface to C# and F#

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多