国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JSP > 正文

jsp fckeditor 上傳中文圖片亂碼問題的解決方法

2024-07-21 02:53:27
字體:
來源:轉載
供稿:網(wǎng)友
徹底解決fckeditor(jsp版)上傳中文圖片亂碼問題,我這里用的編碼是utf-8的,這里用的fckeditor 是2.6的,fckeditor.java包是2.3的
 
經(jīng)過我修改ConnectorServlet.java和SimpleUploaderServlet.java兩個文件,重新生成fckeditor-java-2.3.jar包,要解決所有的亂碼問題,有3部要修改
1.修改Web容器的字符編碼,如果Web容器用的是Tomcat,則修改conf/server.xml文件,在兩個Connector中添加“URIEncoding="utf-8"”,我這里用的是utf-8編碼,所以修改成utf-8,若項目是gb2312編碼,則設置為“URIEncoding="gb2312"”。 
2.在“瀏覽服務器”頁面中上傳文件時,打開項目WebRoot中的文件/editor/filemanager/browser/default/frmupload.html,在head中加一個meta: ,看看該文件是不是utf-8格式的,若不是,則轉換成utf-8,若你用的不是utf-8則轉成你用的那種編碼,上面charset也設置成你用的編碼 
3.修改ConnectorServlet.java和SimpleUploaderServlet.java兩個文件,我在這兩個文件中都是加了一個靜態(tài)變量encoding,private static String encoding;保存項目中的編碼, 若在web.xml文件中沒有給這個變量傳值的話,默認是gb2312,如下代碼if(encoding.isEmpty()){encoding="gb2312";},在ConnectorServlet.java的doGet與doPost的開頭部分加入request.setCharacterEncoding(encoding);將請求的字符集編碼設置成項目中的編碼,在ConnectorServlet.java和SimpleUploaderServlet.java兩個文件中的DiskFileUpload upload = new DiskFileUpload();后面加入upload.setHeaderEncoding(encoding);告訴FileUpload組件處理時的編碼為項目編碼,在FileItem中,用getString(encoding),這項設置可以解決獲取的表單字段為亂碼的問題,所以在每個FileItem實例后面都執(zhí)行一次getString(encoding),就告訴FileItem在取值時用的編碼是encoding所設置的編碼。如在ConnectorServlet.java和SimpleUploaderServlet.java兩個文件中的 FileItem item后面加上一句item.getString(encoding);在FileItem uplFile后面加上一句uplFile.getString(encoding); 接下來就是設置web.xml了,在web.xml中給上面講到的encoding傳值,如下 
<init-param> 
<param-name>encoding</param-name> 
<param-value>utf-8</param-value> 
</init-param> 
一切都OK了,真正的解決了上傳中文名圖片亂碼問題。 
在上面的第3步中,要用到Ant產(chǎn)生jar,這時要注意,把Tomcat安裝目錄下/server/lib里的catalina-ant.jar復制到項目的/WEB-INF/lib下。打開build.xml,修改property name="catalina.home"成Tomcat的安裝目錄。修改taskdef name="deploy"、taskdef name="list"、taskdef name="reload"、taskdef name="undeploy"如下: 
<taskdef name="deploy" classname="org.apache.catalina.ant.DeployTask"> 
<classpath refid="compile.classpath"></classpath> 
</taskdef> 
<taskdef name="list" classname="org.apache.catalina.ant.ListTask"> 
<classpath refid="compile.classpath"></classpath> 
</taskdef> 
<taskdef name="reload" classname="org.apache.catalina.ant.ReloadTask"> 
<classpath refid="compile.classpath"></classpath> 
</taskdef> 
<taskdef name="undeploy" classname="org.apache.catalina.ant.UndeployTask"> 
<classpath refid="compile.classpath"></classpath> 
</taskdef> 
然后在Eclipse的Outline窗口中運行Ant的dist,就會生成的新的FCKeditor-2.3.jar。絕對是真實的,共享出來與大家分享,少一個上傳其它文件的,如RAR的,有添加過這個功能的朋友也拿出來共享下吧 

注:相關教程知識閱讀請移步到編輯器頻道。
發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 中江县| 唐山市| 乌鲁木齐市| 昌图县| 屏东市| 伊春市| 平塘县| 都兰县| 兖州市| 丰原市| 甘洛县| 铜川市| 江达县| 宕昌县| 博湖县| 九寨沟县| 米泉市| 安陆市| 广水市| 岢岚县| 武威市| 丹阳市| 芷江| 天长市| 和田市| 保定市| 阜阳市| 肇东市| 木兰县| 张家港市| 盘山县| 元朗区| 齐齐哈尔市| 西乌珠穆沁旗| 克什克腾旗| 五莲县| 宿松县| 肇庆市| 布尔津县| 叙永县| 商洛市|