package com;
public class Change {
public static void main(String[] args) { String QJstr = "hello!! 全角转换,DAO,8,9,115"; String result = toDBC(QJstr); String result2 = toSBC(result);
System.out.println(QJstr + "/n" + result); System.out.println(result + "/n" + result2);
}
/** * 半角转全角 * @param input String. * @return 全角字符串. */ public static String toSBC(String input) { if(input==null){ return null; } char c[] = input.toCharArray(); for (int i = 0; i < c.length; i++) { if (c[i] == ' ') { c[i] = '/u3000'; // 采用十六进制,相当于十进制的12288 } else if (c[i] < '/177') { // 采用八进制,相当于十进制的127 c[i] = (char) (c[i] + 65248); } } return new String(c); }
/** * 全角转半角 * @param input String. * @return 半角字符串 */ public static String toDBC(String input) { if(input==null){ return null; } char c[] = input.toCharArray(); for (int i = 0; i < c.length; i++) { if (c[i] == '/u3000') { c[i] = ' '; } else if (c[i] > '/uFF00' && c[i] < '/uFF5F') { c[i] = (char) (c[i] - 65248); } } String returnString = new String(c); return returnString; }
}
|