Raymond
          Java筆記
          由一個Document對象,轉換成String,這個方法我幾年前寫的了:
                      TransformerFactory tFactory = TransformerFactory.newInstance();
                      Transformer transformer 
          = tFactory.newTransformer();
                      
          DOMSource source = new DOMSource(inputDoc);
                      StringWriter out 
          = new StringWriter();
                      StreamResult result 
          = new StreamResult(out);
                      transformer.transform(source, result);
                      out.flush();
                      
          return out.toString();

          一直用是沒有問題的,直到今天在resin上面運行,發現一個奇怪的現象,寫入數據庫的中文都變成了類似&#XXXX; 這種編碼。更加奇怪的是我用應用程序的方式運行,是正常沒問題的。我猜想是resin在某個地方做了設置,在網上搜索又一時找不到好方法,不想為了一個小問題轉用jdom之類的包。

          研究了一下,找到了解決的辦法。在Transformer對象創建之后加一句:
             
             
          transformer.setOutputProperty("encoding","GBK");

          問題解決了。具體的機制還沒有時間去了解,有空再回頭研究吧。
          posted on 2006-01-09 17:39 Raymond的Java筆記 閱讀(3908) 評論(1)  編輯  收藏
          Comments
          • # re: DOM的Document對象轉換到String的中文編碼(亂碼)問題
            AA
            Posted @ 2007-01-15 23:26
            謝謝你,你的文章幫助了我:)  回復  更多評論   

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
           
          主站蜘蛛池模板: 资阳市| 抚州市| 武功县| 息烽县| 大埔县| 黄平县| 金乡县| 河东区| 萨迦县| 沛县| 台安县| 岳阳市| 若尔盖县| 临沧市| 华宁县| 汤阴县| 乾安县| 巴马| 庆元县| 泗洪县| 尼木县| 华安县| 双柏县| 凉城县| 万源市| 常熟市| 梁平县| 阿荣旗| 福安市| 新密市| 宁陕县| 台湾省| 盐亭县| 墨竹工卡县| 青冈县| 仙游县| 凉城县| 棋牌| 肃宁县| 海兴县| 天津市|