繁体   English   中英

脚本的用途是什么,如何使两种语言交流

[英]What is the use of scripting and how can i make the two language communicate

[对不起,我的语法和语法很糟糕,但我是意大利人]我知道有很多脚本语言,例如lua,python,javascript。到主程序

ScriptEngine js = new ScriptEngineManager().getEngineByName("js");

然后,我读取了一个包含脚本的文件,并将其插入到res变量中

try {
    js.eval(res);
} catch (ScriptException e) {
    e.printStackTrace();
}

我运行代码并停止。 但是这样我只能使脚本在控制台上打印文本。 最后,我的问题是:“为什么脚本有用?” 我无法使用的脚本可以做什么? 做某些事情更简单吗?”

我想出了这个脚本在javascript:

load("lib.js");

imgSize = 60;

setSound("bounce.wav");
rndSound(["bounce.wav", "gigi.wav"]);
rndSoundDisable(3, 1);
rndImg(1920 - imgSize * 2, 1080 - imgSize * 2, "logo.png");
addImg(0, 0, "bg.png");
rndImg(1920 - imgSize * 2, 1080 - imgSize * 2, "blub.png");

data;

您可以想象该函数的作用。 这是java代码:

ScriptEngine INTERPRETER = new ScriptEngineManager().getEngineByName("js")
String scriptText = "";
FileReader fr = null;
BufferedReader br = null;
try {
    fr = new FileReader(new File(script));
    br = new BufferedReader(fr);

    String currentLine;
    while((currentLine = br.readLine()) != null)
        scriptText += currentLine;

} catch (IOException e) {
    System.err.println("Script " + script + " not found");          
}
ScriptObjectMirror obj = null;

try {
    obj = (ScriptObjectMirror) INTERPRETER.eval(scriptText);
} catch (Exception e) {
    e.printStackTrace();
}

return obj.to(String[].class);

放在函数中的函数返回String [],其中包含来自js的数据值

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM