首页 | 源码下载 | 网站模板 | 网页特效 | 广告代码 | 网页素材 | 字体下载 | 书库 | 站长工具
会员投稿 投稿指南 RSS订阅
当前位置:主页>网络编程>java教程>资讯:Java字符串按字节数截取长度的简单方法

Java字符串按字节数截取长度的简单方法

www.jz123.cn  2010-01-13   来源:   中国建站    责任编辑(袁袁)    我要投递新闻

 /**/ /*

  * 题目:

  * 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 但是要保证汉字不被截半个,如“我ABC”4,应该截为“我AB”,输入“我ABC汉DEF”,6,应该输出为“我ABC”而不是“我ABC+汉的半个”。

  *

  * 解释:

  * 此处的编码方式应该是操作系统默认的GB编码,即汉字占2个字节且第一个字节的最高位是1,

  * 如果理解为有符号数的话,就是负数;而英文占1个字节,符合ASC2码。

  

*/
  class SplitString
  {
  private String str;
  private int byteNum;
  public SplitString() {}
  public SplitString(String str, int byteNum)
  {
  this .str = str;
  this .byteNum = byteNum;
  }
  public void splitIt()
  {
  byte bt[] = str.getBytes();
  System.out.println( " Length of this String ===> " + bt.length);
  if (byteNum >= 1 )
  {
  if (bt[byteNum] < 0 )
  {
  String substrx = new String(bt, 0 , -- byteNum);
  System.out.println(substrx);
  } else
  {
  String substrex = new String(bt, 0 ,byteNum);
  System.out.println(substrex);
  }
  } else
  {
  System.out.println( " 输入错误!!!请输入大于零的整数: " );
  }
  }
  }
  public class TestSplitString
  {
  public static void main(String args[])
  {
  String str = " 我ABC汉DEF " ;
  int num = 6 ;
  SplitString sptstr = new SplitString(str,num);
  sptstr.splitIt();
  }
  }


上一篇:Java多线程的线程同步需要注意的地方 下一篇:使用匿名内部类在方法内部定义并启动线程

评论总数:0 [ 查看全部 ] 网友评论


关于我们隐私版权广告服务友情链接联系我们网站地图