Java學習

          java,spring,structs,hibernate,jsf,ireport,jfreechart,jasperreport,tomcat,jboss -----本博客已經搬家了,新的地址是 http://www.javaly.cn 如果有對文章有任何疑問或者有任何不懂的地方,歡迎到www.javaly.cn (Java樂園)指出,我會盡力幫助解決。一起進步

           

          警告:編碼 utf8 的不可映射字符

          警告:編碼 utf8 的不可映射字符 ANT編譯java文件的問題

          這是因為:由于JDK是國際版的,在編譯的時候,如果我們沒有用-encoding參數指定我們的JAVA源程序的編碼格式,則javac.exe首先獲 得我們操作系統默認采用的編碼格式,也即在編譯java程序時,若我們不指定源程序文件的編碼格式,JDK首先獲得操作系統的file.encoding 參數(它保存的就是操作系統默認的編碼格式,如WIN2k,它的值為GBK),然后JDK就把我們的java源程序從file.encoding編碼格式 轉化為JAVA內部默認的UNICODE格式放入內存中。然后,javac把轉換后的unicode格式的文件進行編譯成.class類文件,此 時.class文件是UNICODE編碼的,它暫放在內存中,緊接著,JDK將此以UNICODE編碼的編譯后的class文件保存到我們的操作系統中形 成我們見到的.class文件。對我們來說,我們最終獲得的.class文件是內容以UNICODE編碼格式保存的類文件,它內部包含我們源程序中的中文 字符串,只不過此時它己經由file.encoding格式轉化為UNICODE格式了。當我們不加設置就編譯時,相當于使用了參數:javac -encoding gbk XX.java,當然就會出現不兼容的情況。


          解決辦法:
          <javac destdir="${build.dir}/classes" debug="true" deprecation="false" optimize="false" failonerror="true" encoding="utf-8">
          <src path="${src.dir}" />
          <classpath refid="classpath" />
          </javac>

          javac里面加encoding參數
          編碼方式為實際編碼即可

          posted on 2009-05-20 13:09 找個美女做老婆 閱讀(9506) 評論(0)  編輯  收藏


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


          網站導航:
           

          導航

          統計

          公告

          本blog已經搬到新家了, 新家:www.javaly.cn
           http://www.javaly.cn

          常用鏈接

          留言簿(6)

          隨筆檔案

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 陵川县| 德昌县| 太仓市| 防城港市| 察隅县| 壤塘县| 新沂市| 甘肃省| 浮梁县| 南陵县| 沾益县| 大埔区| 阿拉善左旗| 乐东| 林西县| 长沙县| 腾冲县| 台安县| 昆山市| 利辛县| 稷山县| 铜梁县| 秦皇岛市| 田东县| 天津市| 固安县| 汝阳县| 马鞍山市| 绍兴市| 同江市| 马边| 星子县| 三河市| 台北市| 博乐市| 中阳县| 东阿县| 锡林浩特市| 平安县| 定襄县| 牙克石市|