java輸出中文亂碼根本原因給html是編碼不一致的問題,所以解決方式就是設定編碼的方式。
其中,也分為位元組流和字元流的解決方式
位元組流:
response.setHeader("Content-Type", "text/html;charset=UTF-8"); response.getOutputStream().write("我是字节流".getBytes("UTF-8"));
字元流:
response.setContentType("text/html;charset=UTF-8"); response.getWriter().write("我是字节流");
response輸出資料時的細節:
(1)getOutputStream和getWriter這兩個方法互相排斥,呼叫了其中的任何一個方法後,就不能再呼叫另一個方法。
(2)Servlet程式向ServletOutputStream或PrintWriter物件中寫入的資料將被Servlet引擎從response裡面獲取,Servlet引擎將這些資料當作回應訊息的正文,然後再與回應狀態列和各響應頭組合後輸出到客戶端。
(3)Serlvet的service方法結束後,Servlet引擎會檢查getWriter或getOutputStream方法傳回的輸出流物件是否已經呼叫過close方法,如果沒有,Servlet引擎tomcat將呼叫close方法關閉該輸出流對象。
更多java知識請關注java基礎教學欄。
以上是java向html輸出中文亂碼解決方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!