[英]How do I load a JavaScript file with Jint in C#?
我想使用 Jint 加载 JavaScript 文件,但我似乎无法弄清楚。 文档说我可以做类似engine.run(file1)
的事情,但它似乎没有加载任何文件。 我需要对文件名做一些特别的事情吗?
这是我的 JavaScript 文件:
// test.js
status = "test";
这是我的 C#
JintEngine js = new JintEngine();
js.Run("test.js");
object result = js.Run("return status;");
Console.WriteLine(result);
Console.ReadKey();
如果我在Run
中手动输入代码,它就可以工作。
object result = js.Run("return 2 * 21;"); // prints 42
我通过自己手动将文件加载到文本中找到了一种解决方法,而不是按此处提到的名称加载它: http://jint.codeplex.com/discussions/265939
StreamReader streamReader = new StreamReader("test.js");
string script = streamReader.ReadToEnd();
streamReader.Close();
JintEngine js = new JintEngine();
js.Run(script);
object result = js.Run("return status;");
Console.WriteLine(result);
Console.ReadKey();
我个人使用:
js.Run(new StreamReader("test.js"));
紧凑,只是工作。
更简洁(使用您的代码)
JintEngine js = new JintEngine();
string jstr = System.IO.File.ReadAllText(test.js);
js.Run(jstr);
object result = js.Run("return status;");
Console.WriteLine(result);
Console.ReadKey();
尝试
using(FileStream fs = new FileStream("test.js", FileMode.Open))
{
JintEngine js = JintEngine.Load(fs);
object result = js.Run("return status;");
Console.WriteLine(result);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.