java中字符进行全角半角转换示例代码
程序员文章站
2024-02-22 12:33:04
前言
本文将给大家展示一下如何将char进行半角与全角转换,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。
术语
全角
sbc...
前言
本文将给大家展示一下如何将char进行半角与全角转换,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧。
术语
全角
- sbc case
- sexagesimal to binary converter
- 60进制转为2进制
半角
- dbc case
- decimal to binary converter
- 10进制转为2进制
工具类
public class asciiutil { public static final char sbc_space = 12288; // 全角空格 12288 public static final char dbc_space = 32; //半角空格 32 // ascii character 33-126 <-> unicode 65281-65374 public static final char ascii_start = 33; public static final char ascii_end = 126; public static final char unicode_start = 65281; public static final char unicode_end = 65374; public static final char dbc_sbc_step = 65248; // 全角半角转换间隔 public static char sbc2dbc(char src){ if (src == sbc_space) { return dbc_space; } if (src >= unicode_start && src <= unicode_end) { return (char) (src - dbc_sbc_step); } return src; } /** * convert from sbc case to dbc case * * @param src * @return dbc case */ public static string sbc2dbccase(string src) { if (src == null) { return null; } char[] c = src.tochararray(); for (int i = 0; i < c.length; i++) { c[i] = sbc2dbc(c[i]); } return new string(c); } public static char dbc2sbc(char src){ if (src == dbc_space) { return sbc_space; } if (src <= ascii_end) { return (char) (src + dbc_sbc_step); } return src; } /** * convert from dbc case to sbc case. * * @param src * @return sbc case string */ public static string dbc2sbccase(string src) { if (src == null) { return null; } char[] c = src.tochararray(); for (int i = 0; i < c.length; i++) { c[i] = dbc2sbc(c[i]); } return new string(c); } }
验证
@test public void testdbc(){ system.out.println(asciiutil.sbc2dbccase("hello world")); system.out.println(asciiutil.dbc2sbccase("hello world")); }
输出
hello world hello world
doc
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。