zoukankan      html  css  js  c++  java
  • Ant编译utf8非法字符:/65279 解决方法

    这是一个很郁闷的问题,碰到这问题百度又不能直接搜索“&#65279”,自然无法查找到结果。普通的浏览器也查不到为啥会出现这个空格。
    出现此问题一般是在浏览器上浏览上某一段包含空格,且用IE浏览器无法查看,但是用FF浏览器filebug查看HTML时就会出现“&#65279”,删除这字符即正常显示,但刷新页面又重新出现。
     
    使用ant编译java文件时报非法字符(不可见的)问题
     
    最简单的方法:
    一般来说错误信息会提示非法字符的位置,可以在eclipse里面切换java文件的编码方式,比如:ISO-8859-1,等编码,可以观察到指定位置的非法字符。删除非法字符即可编译通过。
    对于较少文件适用
    -------------------------------------------------
    另外补充:
    一般用UE或记事本编辑过的UTF-8的文件头会加入BOM标识,该标识由3个char组成。在UTF-8的标准里该BOM标识是可有可无的,Sun 的javac 在编译带有BOM的UTF-8的格式的文件时会出现“非法字符:/65279”的错误,但是用Eclipse进行编译却没有问题,原因在于Eclipse 使用的是自己的JDT,而非javac,关于JDT的描述可以到eclipse的官网上去查看。
    下载editplus,打开你的java源文件(可以打开多个文件),选择“文档”-“文件编码”-“批量更改文件编码…”选择所有你需要修改的编码的java源文件,选择字符集“UTF-8″记得是UTF-8,而非“utf-8 bom”。点击批量保存按钮。再运行你的ant脚本,此时编译就不会报出“非法字符:/65279”这个错误了。


    出现这种情况时,网上提供了两种解决方法: 
    a) 利用UE、Editplus等文本编辑器重新保存文件为不带BOM的UTF-8格式 
    b) 可使用eclipse自带的编译器进行编译 
    <!--在ant中添加property,使用eclipse jdt compiler编译--> 
    <property name="build.compiler" value="org.eclipse.jdt.core.JDTCompilerAdapter" /> 
    相关jar包,在eclipse安装文件plugins目录下:org.eclipse.jdt.core_xxx.jar,xxx为版本号 
    c)用DW关联Notepad++,必要的时间用notepad++里的“转化为utf-8无bom编码格式”
  • 相关阅读:
    HDU 6125
    HDU 6129
    Super Jumping! Jumping! Jumping!
    HDU 1040 As Easy As A+B(排序)
    VS2015转VS2008
    HDU 1329 Hanoi Tower Troubles Again!(乱搞)
    HDU 1062 Text Reverse(字符串)
    HDU 1013 Digital Roots(字符串)
    HDU 1003 Max Sum(动态规划)
    HDU 1203 I NEED A OFFER!(01背包)
  • 原文地址:https://www.cnblogs.com/keheng/p/2511593.html
Copyright © 2011-2022 走看看