最近有個項目場景如下:需要背景周遊圖檔、視訊所在的檔案夾,擷取的到的路徑傳遞到JSP頁面,使用<img src="具體的路徑">顯示圖檔。遇到的問題:如果圖檔的路徑、圖檔名存在中文,則<img> 無法讀取到圖檔。
錯誤截圖:

原因:主要是由于字元編碼不一緻,Tomcat5 的http Connector預設字元編碼是"iso-8859-1"。
解決辦法有如下兩種方式:
1.修改Tomcat中conf檔案夾下的server.xml。找到 <Connector port="">,增加URIEncoding="UTF-8" ,指定URL的編碼為UTF-8;
2.本人使用的是内嵌的Tomcat,而項目的運作環境指定編碼為GBK,按照方法1修改,對其它功能會産生影響,這時可以這樣解決,在JAVA中對中午的路徑進行轉碼,使用URLEncoder.encode( 需要轉碼的内容, "gbk"),然後傳到頁面即可正常顯示。