zdd

            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
            2 隨筆 :: 0 文章 :: 5 評論 :: 0 Trackbacks
          Title今天在練習Web Service時遇到兩個問題:

          1、調用webservice的方法,傳遞的參數(shù)有中文,中文亂碼,上網(wǎng)查了一些資料,但還是沒有解決我的問題。最后的解決辦法是先編碼后解碼。具體例子如下:
          客戶端代碼
          xmlstring=URLEncoder.encode(xmlstring);//xmlstring為客服端調用服務端方法的參數(shù)(含中文),
          服務端代碼
          xmlstring=URLDecoder.decode(xmlstring);
          這樣做非常簡單,減少很多編碼的煩惱
          2、讀取服務端的XML時出現(xiàn)亂碼,解決辦法是:
          SAXReader saxReader = new SAXReader();           
          URL url1=new URL("http://192.168.10.186/tddj/tddj/sqlx.xml;");
          // 讀取服務器端的xml時,設置流文件的讀取時編碼應該與源文件的編碼一致
          BufferedReader in1 = new BufferedReader(new InputStreamReader(url1.openStream(),"UTF-8"));
          兩個很簡單的問題,但都是我辛辛苦苦想出來的解決辦法,特別第一個問題,網(wǎng)上的很多解決方法都比較麻煩,且不一定解決問題。

          之前也遇到過亂碼的問題,現(xiàn)在想想好多問題是可以變通的解決,不必非要吊死在一棵樹上?。?!


          posted on 2009-12-10 18:25 肖東 閱讀(1660) 評論(4)  編輯  收藏

          評論

          # re: 讀取服務端的XML亂碼的解決 2009-12-11 16:12 av
          crimson 這個里面好像不支持中文路徑啊
            回復  更多評論
            

          # re: 讀取服務端的XML亂碼的解決 2009-12-11 16:47 肖東
          你可能是說第二個問題,我的意思是xml文件里含有中文,就需要設置編碼方式,且與源文件一致。的確,如果url里面含有中文,就會報錯。我正在為這個問題煩惱,即:URL url1=new URL("http://192.168.10.186/tddj/tddj/中國.xml;");
          就會報錯。即使對“中國”編碼,也會報錯。暫時我還沒有找到解決辦法。  回復  更多評論
            

          # re: 讀取服務端的XML亂碼的解決 2009-12-11 17:02 肖東
          希望各位多多指教!上面的這個問題我已經(jīng)研究一天了,還是沒找到解決辦法。  回復  更多評論
            

          # re: 讀取服務端的XML亂碼的解決 2009-12-11 17:40 肖東
          問題解決了一半。配置服務器的server.xml,Connector元素中設置URIEncoding="GBK"。這樣提交的url自動編碼解碼。但是會影響整個工程。顯然這樣是不被允許的。只好再想其他辦法。  回復  更多評論
            


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


          網(wǎng)站導航:
           
          主站蜘蛛池模板: 濮阳县| 安多县| 阜新市| 福建省| 灌南县| 阿坝县| 曲靖市| 车险| 济源市| 罗平县| 阿城市| 松滋市| 新邵县| 佛山市| 扶绥县| 西林县| 英山县| 枣阳市| 尉氏县| 定安县| 青冈县| 古交市| 庆阳市| 德兴市| 西乌| 永城市| 木里| 雷州市| 伊宁市| 太湖县| 海丰县| 宁城县| 潮州市| 马关县| 基隆市| 清河县| 牙克石市| 安化县| 吴旗县| 同心县| 瑞安市|