`
flm_llx
  • 浏览: 60945 次
  • 性别: Icon_minigender_1
  • 来自: 应县
社区版块
存档分类
最新评论

JAVA半角与全角的转换

    博客分类:
  • java
阅读更多
package test;
import java.io.InputStreamReader;
import java.io.BufferedReader;
public class haha {
  public haha() {
  }
  public static byte[] getValue(String key){
    byte[] temp=key.getBytes() ;
    int len=temp.length ;
    byte[] ret=new byte[len*2];
    for(int i=0,j=0;i<len;i++,j=j+2){
      ret[j]=-93;
      temp-=128;
      ret[j+1]=temp;
    }
    return ret;
  }
  public static byte[] getBjValue(String key){
    byte[] temp=key.getBytes() ;
    int len=temp.length ;
   
    int qjlen=0;
    for(int m=0;m<len;m++){//计算全角字母的个数
      if(temp[m]==-93){
        qjlen++;
        m++;
      }
    }
    byte[] ret=new byte[len-qjlen];
    for(int i=0,j=0;j<len;i++,j++){
      if(temp[j]==-93){//全角的
        temp[j+1]+=128;
        ret=temp[j+1];
        j++;
      }else{
        ret=temp[j];//普通的
      }
    }
    return ret;
  }
  public static void main(String args[]){
    try{
     System.out.println("请输入半角字母或数字的字符串:");
     BufferedReader ch=new BufferedReader(new InputStreamReader(System.in));
     String pd = null;
       pd = ch.readLine();
       System.out.println(new String(haha.getValue(pd)));
       System.out.println("请输入包含全角字母或数字的字符串:");
       String pd2=ch.readLine();
       System.out.println(new String(haha.getBjValue(pd2)));
     ch.close() ;
     System.out.println("ad1gd2avd="+new String(haha.getBjValue("ad1gd2avd")));
   }    catch(Exception e){
   }
  }
}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics