0

我正在使用 JESS 来实现我的专家系统,并且我有一个用户功能。它将一些字符串写入文本文件。

public Value call(ValueVector vv, Context context) throws JessException {

    Rete engine = context.getEngine();      
    int size = vv.size();

    for(i = 0; i < size-1; i++)
        params[i] = vv.get(i+1).stringValue(context); 

    engine.eval("(printout file " + params[2] + ")");
return new Value(params[1], RU.STRING);
}

params[2]/home/username/folder作为内容。当它打印到文件中时,我在文件中得到以下内容。BS有黑色背景顺便说一句。

BS用户名/文件夹

我不确定这里发生了什么。有任何想法吗?

另外,当我从 JESS 代码打印出来时,我从来没有遇到过这个问题。

4

1 回答 1

1

未引用的文本/home/被解析为正则表达式;打印的值有些不可预测。您需要在构建命令中包含双引号,以便将路径视为带引号的字符串。

于 2015-05-05T04:29:00.743 回答