【问题标题】:Open function in CLIPS does not work when CLIPS is integrated with .NET当 CLIPS 与 .NET 集成时,CLIPS 中的打开功能不起作用
【发布时间】:2021-04-22 01:11:54
【问题描述】:

尝试在 c# 中使用这个 open; "(open " + "CarFluidTest.test.txt" + " " + "b" +" "+ "w" + ")" 在 Eval 中,但出现此错误:

[ARGACCES5] Function open expected argument #3 to be of type string

然而在打开的函数字符串中 w 是第三个参数。

帮助解决这个问题。

【问题讨论】:

    标签: clips


    【解决方案1】:

    你传递给 eval 的命令是

    (open CarFluidTest.test.txt b  w)
    

    符号(不带引号)和字符串(带引号)是 CLIPS 中的两种不同类型。您应该将“w”作为第三个参数传递,而不是 w。为此,请将您构造的字符串修改为

    "(open " + "CarFluidTest.test.txt" + " " + "b" +" "+ "\"w\"" + ")"
    

    【讨论】:

    • test.txt 是我作为嵌入式资源添加到解决方案 CarFluidtest 中的文件,当我使用逻辑名称 b 进行打印输出时,test.txt 上仍然没有写入任何内容我哪里错了?跨度>
    • 嵌入式资源是只读的;你不能给他们写信。此外,它们不仅仅是文件系统中的一些文件;它们嵌入在可执行文件中。所以你也不能使用 CLIPS open 函数来读取它们的内容。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多