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)

          隨筆檔案

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 上思县| 铜陵市| 湘潭市| 尚志市| 牙克石市| 东海县| 华宁县| 肥乡县| 闸北区| 安阳市| 江津市| 石首市| 遵义市| 泾川县| 多伦县| 福建省| 南华县| 祁阳县| 灵川县| 休宁县| 多伦县| 金阳县| 宜城市| 临江市| 塔城市| 霍城县| 济源市| 农安县| 巴南区| 烟台市| 湾仔区| 弋阳县| 民勤县| 东至县| 海伦市| 安远县| 青州市| 东明县| 固始县| 伊川县| 黔西县|