有人能为我描述一下如何在JavaScript Rhino中正确指定字符编码吗?
我对解决Java应用程序和数据库(MySQL)之间以及应用程序和浏览器之间的编码问题相当熟悉,但这个问题似乎涉及shell和文件i/o。
我有一个主要用JavaScript编写的应用程序,它在Rhino上运行,可以在Apache Tomcat中运行,也可以通过Rhino shell独立运行。
所有的js源代码都保存为UTF-8 (在Eclipse中),并使用Rhino shell的"load“函数或(如果在Tomcat中运行)加载到Rhino中:
public static void loadScript( String sFile ) throws Exception {
java.io.BufferedReader oReader = new java.io.BufferedReader(
new java.io.InputStreamReader( new java.io.FileInputStream( sDir + sFile ), "UTF-8" ) );
org.mozilla.javascript.Context cx = contextFactory.enterContext();
try {
cx.evaluateReader( scope, oReader, sFile, 1, null );
} finally {
org.mozilla.javascript.Context.exit();
}
oReader.close();
}从应用程序输出时,源代码中指定的字符(如“£”和“source”)会损坏。
感谢得到的任何帮助。
发布于 2013-04-04 00:34:40
这不是一个关于Rhino的问题。必须使用'UTF-8‘编码支持正确读取源文件。
您可以考虑在此处查看相关主题:Reading any text file having strange encoding?
https://stackoverflow.com/questions/15781237
复制相似问题