java全角空格转换半角空格

这里主要区别就在于,全角字符串的getBytes()的字解码和半角字符串的getBytes()字节码不一样。

半角的 字节码是 32,全角的字节码是 -95-95 ,我们只需在这里给它都替换成 32 就可以了。

我在这里提供了一个类方法,可以将全角空字节码 换成 32半角字节码。很有用哦。

public class RemoveSpaces {
 public static final String removeSpace(String ss){
     byte[] t = ss.getBytes();
     for(int i=0;i       if(t[i] == -95 && t[i+1]==-95 ){
        t[i]=32;
        if(i+1==t.length-1){
           t[i+1] = 0;
        }else{
         for(int j=i+1;j+1          t[j]=t[j+1];
          if(j+1 == t.length-1) t[j+1] = 32;
         }
        }
        
          }             
      }
     return new String(t);
    }

public static void main(String arg[]){

  String test = "我 是 好 人";

 String result=removeSpace(test );

   System.out.println(test +"/n"+result);

}
}

 

你可能感兴趣的:(java,java,string,byte,class)