首页 | 掌中米格 | 米格新闻 | 米格出品 | 游戏开发 | 资源下载 | 手机规范 | 玩家空间 | 米格论坛
 游戏开发
| 业内资讯 | 游戏评测 | 毕业设计 | 策划思潮 | 程序开发 | 美术天地 | 时尚数码 | 手机诊疗
当前位置:游戏开发首页 >> 程序开发 >> 字符串分割函数(高效、简捷)
字符串分割函数(高效、简捷)  
      

字符串分割函数(高效、简捷)

这个函数已反复应用于多个手机应用软件平台
用法:参数定义:str——要分割的字符串
                        font——字体
                        rowMaxW——分割后每行宽度
         支持标示符:
         \n    换行
         \t     插入两个汉字长度的空格

public static final String[] clipString(String str,Font font,int rowMaxW){
  if(str == null)
   return null;
  if(rowMaxW < font.charWidth('哈'))
   rowMaxW = font.charWidth('哈');         
  int strID = 0;
  int rowW = 0;
  Vector strManager = new Vector();
  char ch = ' ';
  while(str.length() > strID){
   ch = str.charAt(strID);
   switch(ch)
   {
   case '\n':
    strManager.addElement(str.substring(0,strID));
    str = str.substring(strID+1);
    rowW = 0;
    strID = 0;
    break;
   case '\t':
    StringBuffer sb = new StringBuffer(str);
    sb.deleteCharAt(strID);
    sb.insert(strID,"       ");
    str = sb.toString();
    break;
   default:
    if(rowW + font.charWidth(ch) > rowMaxW){
     strManager.addElement(str.substring(0,strID));
     str = str.substring(strID);
     rowW = 0;
     strID = 0;
    }else{
     rowW += font.charWidth(ch);
     strID++;
    }
   }
  }
  strManager.addElement(str);
  String[] o_Str = new String[strManager.size()];
  strManager.copyInto(o_Str);
  return o_Str;
}

 

返回结果是一个已切割好的String数组,只要用一个循环打印出来就可以了
public static final void drawClipString(Graphics g,String[] clipStr,Font font,int color,int x,int y){
  if(clipStr == null){
     System.out.println("drawClipString");
     return;
  }
  int FONTH = font.getHeight();
  g.setFont(font);
  g.setColor(color);
  for(int i=0;i<clipStr.length;i++)
     g.drawString(clipStr[ i ],x,y+i*FONTH,0);
}

参数定义:clipStr——先前分割好的字符串数组
               font——字体
               color——颜色
               x,y——打印的屏幕位置

注意,切割和打印函数的字体参数必须保持一致!如果你是初学者,不知道怎么填字体和颜色参数,就把这两个参数去掉,同时报错的地方也统统去掉吧,打印前颜色设置一下就行了。




本文引用地址: http://www.mig.com.cn/art/2007/1116/article_161.html

相关文章:
关于米格· 联系米格· 米格出品· 米格动态· 合作伙伴· 招贤纳士·
  无标题文档
万众期待!巅峰巨作《燃烧的征途》隆重面世
万众期待!巅峰巨作《燃烧的征途》隆重面世
掌中米格新作频发 圣诞贺礼快乐登场
掌中米格新作频发 圣诞贺礼快乐登场
掌中米格佳音频传,金手指奖实至名归!
掌中米格佳音频传,金手指奖实至名归!
游戏行业年度顶级大奖“金手指奖”揭晓(附名单)
游戏行业年度顶级大奖“金手指奖”揭晓(附名单)
国产游戏尖峰巨作 真三国无双赵云传II
国产游戏尖峰巨作 真三国无双赵云传II
CONTRA无敌 魂斗罗归来
CONTRA无敌 魂斗罗归来
动漫王者 火影至来
动漫王者 火影至来
张治民:中移动分层分级管理A级SP分析
张治民:中移动分层分级管理A级SP分析




  • 动作游戏
  • 角色扮演
  • 飞行射击
  • 体育竞速
  • 娱乐棋牌
  • 休闲娱乐
  • 网站名称:掌中米格 
简介:掌中米格 
网站名称:Glu Mobile Games 
简介:
    网站名称:当乐网 
简介: 
网站名称:捉鱼网 
简介:
    网站名称:Game1313 
简介: 
网站名称:xjoys 
简介:
    网站名称:蚂蚁爬爬 
简介:手机游戏 电子书 等各类手机资源 蚂蚁爬爬手机资源下载中心 
网站名称:新浪无线 
简介:
    网站名称:米格小窝 
简介:米格公司员工的小窝 
网站名称:开路网 
简介: