当前位置:  编程技术>java/j2ee

java 全角半角字符转换如何实现

    来源: 互联网  发布时间:2014-10-22

    本文导语:  代码如下: package com.whatycms.common.util; import org.apache.commons.lang.StringUtils; /** * * 提供对字符串的全角->半角,半角->全角转换 * */ public class BCConvert { /** * ASCII表中可见字符从!开始,偏移位值为33(Decimal) */ static final char DBC_CHAR_START =...

代码如下:

package com.whatycms.common.util;
import org.apache.commons.lang.StringUtils;
/**
*
 
* 提供对字符串的全角->半角,半角->全角转换
*

*/
public class BCConvert {
/**
* ASCII表中可见字符从!开始,偏移位值为33(Decimal)
*/
static final char DBC_CHAR_START = 33; // 半角!
/**
* ASCII表中可见字符到~结束,偏移位值为126(Decimal)
*/
static final char DBC_CHAR_END = 126; // 半角~
/**
* 全角对应于ASCII表的可见字符从!开始,偏移值为65281
*/
static final char SBC_CHAR_START = 65281; // 全角!
/**
* 全角对应于ASCII表的可见字符到~结束,偏移值为65374
*/
static final char SBC_CHAR_END = 65374; // 全角~
/**
* ASCII表中除空格外的可见字符与对应的全角字符的相对偏移
*/
static final int CONVERT_STEP = 65248; // 全角半角转换间隔
/**
* 全角空格的值,它没有遵从与ASCII的相对偏移,必须单独处理
*/
static final char SBC_SPACE = 12288; // 全角空格 12288
/**
* 半角空格的值,在ASCII中为32(Decimal)
*/
static final char DBC_SPACE = ' '; // 半角空格
/**
*
 
* 半角字符->全角字符转换
* 只处理空格,!到˜之间的字符,忽略其他
*

*/
private static String bj2qj(String src) {
if (src == null) {
return src;
}
StringBuilder buf = new StringBuilder(src.length());
char[] ca = src.toCharArray();
for (int i = 0; i < ca.length; i++) {
if (ca[i] == DBC_SPACE) { // 如果是半角空格,直接用全角空格替代
buf.append(SBC_SPACE);
} else if ((ca[i] >= DBC_CHAR_START) && (ca[i] 半角字符转换
* 只处理全角的空格,全角!到全角~之间的字符,忽略其他
*
*/
public static String qj2bj(String src) {
if (src == null) {
return src;
}
StringBuilder buf = new StringBuilder(src.length());
char[] ca = src.toCharArray();
for (int i = 0; i < src.length(); i++) {
if (ca[i] >= SBC_CHAR_START && ca[i]

    
 
 
 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • java实现判断字符串是否全是数字的四种方法代码举例
  • Java中关于字符串字符数目的问题
  • 用Java正则去掉字符串中重复出现的字符
  • 在JAVA中如何实现在一个长字符串查找某个字符串??
  • java中如何将ascII 码转换成字符以及将字符转换成ascII码? 在线等待加分!
  • java字符串比较获取字符串出现次数的示例
  • java中对字符串每个字符统计的方法
  • 在java/jsp里怎样判断一个yyyymmdd格式的字符串是合法的日期型字符串,并求两日期字符串之间的天数?
  • java实现压缩字符串和java字符串过滤
  • Java判断字符串为空、字符串是否为数字
  • java判断日期字符是否有效(在线等待答案)
  • 如何在java中将任意字符转化为数字
  • 我的问题是:在java中是否有方法能够去掉一行字符串中的某个字符。
  • java中的转义字符介绍
  • Java String字符串和Unicode字符相互转换代码
  • JAVA求字符串的子串,谢谢!
  • 16进制值为0D的字符在java里怎么写?
  • 如何从java字符串中判断空格在第几位
  • 菜鸟问题:java如何进行字符处理?
  • java 字符串有沒有 像 javascript 中 split() 的方法.
  • java中如何将数字转化为字符串并且不足位数补0
  • java命名空间java.sql类types的类成员方法: java_object定义及介绍
  • 我想学JAVA ,是买THINK IN JAVA 还是JAVA2核心技术:卷1 好???
  • java命名空间java.awt.datatransfer类dataflavor的类成员方法: imageflavor定义及介绍
  • 请问Java高手,Java的优势在那里??,Java主要适合于开发哪类应用程序
  • java命名空间java.lang.management类managementfactory的类成员方法: getcompilationmxbean定义及介绍
  • 如何将java.util.Date转化为java.sql.Date?数据库中Date类型对应于java的哪个Date呢
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getlibrarypath定义及介绍
  • 谁有电子版的《Java编程思想第二版(Thinking in java second)》和《Java2编程详解(special edition java2)》?得到给分
  • java命名空间java.lang.management接口runtimemxbean的类成员方法: getstarttime定义及介绍
  • 本人想学java,请问java程序员的待遇如何,和java主要有几个比较强的方向




  • 特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3