本帖最后由 parcool 于 2013-03-24 13:37:01 编辑

解决方案 »

  1.   


    就算取出了
    []
    [a]
    [b]
    [c]
    如何判断第一个为空????
      

  2.   


    强转成int打印出来,然后去查查这个编码代表什么即可
      

  3.   


    我用的
    if(String.valueOf(arr[i]).hashCode() == 65279){
       System.out.println("第"+i+"个为非法字符!"); }
    感觉欠妥
      

  4.   

    这个奇怪的 character 是 0xFEFF.
    出现在一个Unicode文件的开头,就是 BOM(Byte Order Mark)
    同时,在Unicode中它又是 Zero-width no-break space (ZWNBSP)Zero-width 意味着它在表示时,没有width,所以你在一个Unicode应用中看不见它,反而,在非Unicode应用中能看到它,多表示为“?”如何检测?
    简单地检查 str.charAt(i) == 0xFEFF 就可以了,代码如下:public static void detectBOM(String s) {
        for (int i=0,l=s.length(); i<l; i++) {
           if ( s.charAt(i) == 0xFEFF ) {
              System.out.println("Warning: BOM is detected at " + i + "-th character");
           }
        }
    }
      

  5.   

    你应该先trim一下,不然数据不准确的哇~
      

  6.   

    这个奇怪的 character 是 0xFEFF.
    出现在一个Unicode文件的开头,就是 BOM(Byte Order Mark)
    同时,在Unicode中它又是 Zero-width no-break space (ZWNBSP)Zero-width 意味着它在表示时,没有width,所以你在一个Unicode应用中看不见它,反而,在非Unicode应用中能看到它,多表示为“?”如何检测?
    简单地检查 str.charAt(i) == 0xFEFF 就可以了,代码如下:
    Java code
    ?
    1
    2
    3
    4
    5
    6
    7
    public static void detectBOM(String s) {
        for (int i=0,l=s.length(); i<l; i++) {
           if ( s.charAt(i) == 0xFEFF ) {
              System.out.println("Warning: BOM is detected at " + i + "-th character");
           }
        }
    }
      

  7.   

    我只能说你没有看过API 这种问题 都拿出来
      

  8.   

    如果在eclipse里也要看保存成字符集类型了。
      

  9.   

    trim一下就好了,何必纠结于这样的问题
    还有很多大事等你去处理呢
      

  10.   


    trim()是不行的哈。你试试就知道了。