2
我正在開發僅用於印地語的文本到語音網站。但是我遇到了以下問題,無法找到合適的解決方案。印地文文本顯示不正確
輸入:102सुरंगों (例如)
輸出:(एकसौदो)_ NSWसà¥澶°à¤à¤à¥å¤
雖然數字部分被正確解釋,文本被錯誤地處理。此外,輸入改變爲以下:102सà¥澶°à¤à¤à¥å¤
正確的輸出必須是:(एकसौदो)_ NSWसुरंगों
這是在按鈕單擊時調用的index.jsp中的代碼。
Preprocessor.java
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException, Exception {
response.setContentType("application/json;charset=utf-8");
PrintWriter out=response.getWriter();
String sent=request.getParameter("INPUT_TEXT");
sent=sent.trim();
NewJFrame2 njf=new NewJFrame2();
String p=njf.read(sent);
Map m1 = new HashMap();
m1.put("x", sent);
m1.put("y", p);
Gson gson = new Gson();
String json = gson.toJson(m1);
System.out.println(json);
out.write(json);
out.close();
}
請指引我到我的錯誤:
function submitPreprocessForm() {
var postData=$("#maryWebClient").serializeArray();
$.ajax({
url: "preprocess",
context:this,
type:"POST",
dataType:"json",
data:postData,
success: function(response){
$("#INPUT_TEXT").val(response["x"]);
$("#INPUT_TEXT2").val(response["y"]);
},
error: function(errorData){alert(errorData);}
});}
這是模塊(的一部分),使用URL模式用於顯示文本預處理叫。
注意:我檢查了NetBeans項目屬性和web.xml中的編碼。兩者都被正確設置爲「UTF-8」。
您必須使用'request.getParameter()'方法以UTF-8格式輸入。看到這個問題:[HttpServletRequest UTF-8編碼](http://stackoverflow.com/questions/16527576/httpservletrequest-utf-8-encoding) – progyammer
從哪裏發送控制器的響應? –
@progy_rock我該如何做到這一點,可以請更具體一點嗎? – coder0007