中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      Struts中文問題怎么解決

      時間:2024-09-09 12:07:14 SUN認(rèn)證 我要投稿
      • 相關(guān)推薦

      Struts中文問題怎么解決

        碰到struts中文問題時,JSP頁面上仍然顯示的是亂碼,下面方法在windows的weblogic8下,和unix的weblogic8下均正確顯示漢字。一起來看看吧!

        以下是代碼內(nèi)容:

        首先是JSP頁面的內(nèi)容,最簡化的一個form

        TestItem English :

        TestItem Chinese :

        注意,頁面的字符集一定要定義成gb2312,否則顯示不了正確的漢字了,代碼上半部的logic:iterate 標(biāo)簽是 action 處理完畢后,返回給頁面顯示的。至于form提交的部分,由struts機(jī)制去做了,我只把 testitem_config 這個 action 的原代碼給出,大家就看明白了:

        public class TestItemConfigAction extends Action {

        public ActionForward execute(ActionMapping mapping, ActionForm form,

        HttpServletRequest request, HttpServletResponse response)throws Exception {

        TestItemConfigForm pcForm = (TestItemConfigForm)form;

        String[] entryIndexArray = pcForm.getEntrypro();

        String testPartKey;

        ArrayList testPartOptionsEn = new ArrayList();

        ArrayList testPartOptionsCn = new ArrayList();

        ServletContext context = getServlet()。getServletContext();

        String file = context.getRealPath(“/WEB-INF/classes/resource/TestItem.properties”);

        PropertiesFileOperate pOperate = new PropertiesFileOperate(file);

        Properties property = pOperate.getProperties();

        int testpartnum = Integer.parseInt(property.getProperty(“test.item.num”));

        if(pcForm.getOperateFlag() != null && !“”。equals(pcForm.getOperateFlag())) {

        if(Integer.parseInt(pcForm.getOperateFlag()) == 1 &&

        pcForm.getTestItemEn() != null && !“”。equals(pcForm.getTestItemEn())){

        String addKeyEn = “test.item.en.” + (testpartnum + 1);

        String addKeyCn = “test.item.cn.” + (testpartnum + 1);

        String addValueEn = pcForm.getTestItemEn()。trim();

        String addValueCn = pcForm.getTestItemCn()。trim();

        String addValueCnWirite = new String(addValueCn.getBytes(“ISO-8859-1”));

        pOperate.modifyProperties(“test.item.num”, (testpartnum + 1) + “”);

        pOperate.addProperties(addKeyEn, addValueEn);

        pOperate.addProperties(addKeyCn, addValueCnWirite);

        pOperate.saveFile();

        pOperate = null;

        }

        if(Integer.parseInt(pcForm.getOperateFlag()) == 2 &&

        pcForm.getTestItemEn() != null && !“”。equals(pcForm.getTestItemEn())){

        int entryIndex = Integer.parseInt(pcForm.getTestItemIndex()。trim());

        String addKeyEn = “test.item.en.” + entryIndex;

        String addKeyCn = “test.item.cn.” + entryIndex;

        String addValueEn = pcForm.getTestItemEn()。trim();

        String addValueCn = pcForm.getTestItemCn()。trim();

        String addValueCnWirite = new String(addValueCn.getBytes(“ISO-8859-1”));

        pOperate.modifyProperties(addKeyEn, addValueEn);

        pOperate.modifyProperties(addKeyCn, addValueCnWirite);

        pOperate.saveFile();

        pOperate = null;

        }

        if(Integer.parseInt(pcForm.getOperateFlag()) == 3){

        for(int i = 0; i 《 entryIndexArray.length; i++){

        String indexEntry = (entryIndexArray[i]。substring(1, entryIndexArray[i]。indexOf(“,”)))。trim();

        String addKeyEn = “test.item.en.” + indexEntry;

        String addKeyCn = “test.item.cn.” + indexEntry;

        pOperate.modifyProperties(addKeyEn, “”);

        pOperate.modifyProperties(addKeyCn, “”);

        }

        pOperate.saveFile();

        pOperate = null;

        }

        }

        PropertiesFileOperate pOperateShow = new PropertiesFileOperate(file);

        Properties propertyShow = pOperateShow.getProperties();

        int testpartNumber = Integer.parseInt(propertyShow.getProperty(“test.item.num”));

        ArrayList array = new ArrayList();

        for(int i = 1; i 《= testpartNumber; i++){

        ArrayList arr = new ArrayList();

        testPartKey = “test.item.en.”+i;

        if (propertyShow.getProperty(testPartKey) != null &&

        !“”。equals(propertyShow.getProperty(testPartKey))){

        arr.add(i+“”);

        testPartOptionsEn.add(propertyShow.getProperty(testPartKey));

        arr.add(propertyShow.getProperty(testPartKey));

        testPartKey = “test.item.cn.”+i;

        testPartOptionsCn.add(new String(propertyShow.getProperty(testPartKey)。getBytes(),“gb2312”));

        arr.add(propertyShow.getProperty(testPartKey));

        array.add(arr);

        }

        }

        request.setAttribute(“box”,array);

        pcForm.reset(mapping, request);

        return mapping.findForward(“testitemone”);

        }

        }

        這個 action 并不復(fù)雜, 首先它定義了一個 properties 文件 TestItem.properties,在web服務(wù)器下的/WEB-INF/classes/resource/下面,用來記錄頁面上輸入的內(nèi)容,由于 String addValueCnWirite = new String(addValueCn.getBytes(“ISO-8859-1”)) 這個語句進(jìn)行了字符轉(zhuǎn)換,所以 properties 文件中記錄的內(nèi)容大概都是這樣子的:

        test.item.cn.29=\u7F1D\u9699\u5F02\u5E38

        如果把程序改成記錄到數(shù)據(jù)庫中,也應(yīng)該是這個樣子,屬于Unicode編碼吧。

        而當(dāng)要把記錄的內(nèi)容輸出到客戶端時候,new String(propertyShow.getProperty(testPartKey)。getBytes(),“gb2312”)) 這個語句又把Unicode編碼轉(zhuǎn)換成了GB2312,所以要求JSP頁面charset=gb2312,這樣在windows 和 unix兩個系統(tǒng)下都可以正常顯示中文了,絕對沒有問題。

      【Struts中文問題怎么解決】相關(guān)文章:

      關(guān)于Struts中文問題的解決方法01-08

      怎么解決關(guān)鍵詞排名問題03-03

      怎么解決外網(wǎng)不能訪問IIS的問題03-30

      班組長常見問題怎么解決03-18

      怎么解決Word文檔中文字下有紅色或綠色波浪線11-29

      解決寶寶睡覺問題03-21

      基于解決問題的學(xué)習(xí)03-21

      解決電腦變慢問題的方法03-19

      如何解決頭皮問題03-18

      主站蜘蛛池模板: 国产激情视频在线| 中文字幕日产人妻久久| 国产一区二区三区在线免费播放 | 久久久久成人精品免费播放| 国产精品黑丝亚洲自拍导航| 开阳县| 在线免费观看黄色国产| 免费看一级av一区二区不卡| 精品无吗国产一区二区三区av| 久久精品有码中文字幕1| 日韩久久av电影| 一本色道精品久久一区二区三区 | 久久无码高潮喷水抽搐| 日韩美女高潮流白浆视频在线观看| 天等县| 亚洲精品日本久久久中文字幕| 亚洲美女av日韩一区| 中文字幕人妻一区二区三区四区| 无码国产精品一区二区免费式芒果| 宜黄县| 丹寨县| 达州市| 白玉县| 竹山县| 潞城市| 衡水市| 午夜不卡亚洲视频| 色婷婷亚洲十月十月色天| 贵溪市| 蜜桃视频在线免费观看一区二区| 国产在线h视频| 国产精品亚洲综合色区丝瓜| 亚洲综合自拍偷拍视频 | 揄拍成人国产精品视频肥熟女| 民县| 97色综合| 中文字幕av日韩精品一区| 午夜视频福利一区二区三区| 亚洲乱码中文字幕综合 | 阳西县| 阿拉善盟|