2013-04-03 79 views
0

有人可以描述如何在JavaScript Rhino中正確指定字符編碼嗎?Mozilla犀牛字符編碼

我相當熟悉Java應用程序和數據庫(MySQL)之間以及應用程序和瀏覽器之間的編碼問題,但這個問題似乎涉及shell和文件I/O。

我有一個主要用JavaScript編寫的應用程序,它可以在Apache Tomcat中運行,也可以通過Rhino shell獨立運行在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(); 
} 

所有JS源代碼由以下保存爲UTF-8(在Eclipse),並且被加載到犀牛或者使用犀牛殼的「裝載」函數,或(如果內部Tomcat上運行)

從應用程序輸出時,源代碼中指定的字符(如'£'和'€')已損壞。

任何幫助感激地收到...

+1

您是如何生產產量的?您是否使用在Rhino REPL中綁定的'print'函數?符號如何損壞?它們是否使用JVM的默認編碼進行編碼? –

+0

如果這是Windows操作系統,它們可能會被System.out破壞 – McDowell

回答