您的位置:首页 > 编程语言 > Java开发

Java中全角/半角字符的转换

2007-09-06 14:20 591 查看
在处理字符串时,经常需要进行全角/半角字符的转换,其实原理非常简单,只要得出字母的偏移值,重新计算其编码即可,下面给出转换方法

    public String toDBCS(String str) {

        if (str == null) {

            return "";

        }

 

        StringBuffer sb = new StringBuffer();

 

        for (int i = 0, n = str.length(); i< n; i++) {

            int c = str.charAt(i);

 

            if ((c >= 'a') && (c<= 'z')) {

                c = (c + 'a') - 'a';

            } else if ((c >= 'A') &&(c <= 'Z')) {

                c = (c + 'A') - 'A';

            } else if ((c >= '0') &&(c <= '9')) {

                c = (c + '0') - '0';

            }

 

            sb.append((char) c);

        }

 

        return sb.toString();

    }

 

    public String toSBCS(String str) {

        if (str == null) {

            return "";

        }

 

        StringBuffer sb = new StringBuffer();

 

        for (int i = 0, n = str.length(); i< n; i++) {

            int c = str.charAt(i);

 

            if ((c >= 'A') && (c <= 'Z')) {

                c = (c + 'A') - 'A';

            } else if ((c >= '0') && (c <= '9')) {

                c = (c + '0') - '0';

            } else if ((c >= 'a') && (c <= 'z')) {

                c = (c + 'a') - 'a';<
4000
p>
            }

 

            sb.append((char) c);

        }

 

        return sb.toString();

    }

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java string c null