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筆記 閱讀(3914) 評論(1)  編輯  收藏
          Comments
          • # re: DOM的Document對象轉換到String的中文編碼(亂碼)問題
            AA
            Posted @ 2007-01-15 23:26
            謝謝你,你的文章幫助了我:)  回復  更多評論   

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


          網站導航:
           
           
          主站蜘蛛池模板: 晋中市| 乐东| 固原市| 宝山区| 科技| 团风县| 延吉市| 乌拉特中旗| 金坛市| 昭通市| 高唐县| 榕江县| 全椒县| 永川市| 微博| 沈丘县| 西乡县| 皮山县| 梨树县| 襄汾县| 长治县| 溧水县| 五常市| 花莲市| 德阳市| 崇州市| 大田县| 温宿县| 于田县| 临湘市| 左云县| 佛教| 伊吾县| 霍山县| 九寨沟县| 绵竹市| 沙田区| 砀山县| 孝感市| 平乡县| 缙云县|