php文件中在亂碼(如a.php文件在浏覽器亂碼):
header("Content-Type:text/html;charset=utf-8")是設置網頁的。
mysql_query("set names utf-8")設置數據庫的。
java中的struts:
中文亂碼問題一般是指當請求參數有中文時,無法在Action中得到正確的中文。Struts2中有2種辦法可以解決這個問題:
設置JSP頁面的pageEncoding=”utf-8”,就不會出現中文亂碼;
如果JSP頁面的pageEncoding=”GBK”,那麼需要修改struts.i18n.encoding=GBK,在struts.xml中加入如下語句進行修改。
復制代碼 代碼如下:
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.i18n.encoding" value="GBK"/>
……
</struts>
上面2種方法可以解決POST請求中的中文參數,但是GET請求中的中文參數不能解決,GET請求中的中文參數的亂碼需要通過修改Tomcat的server.xml文件來解決,修改如下內容,加入URIEncoding=”GBK”:<Connector port="8080" …… URIEncoding="GBK"/>