字符串处理组件

DealString.java

主要函数如下

public DealString() //构造函数

/**把null转化为""*/
  public String toString(String str)
  {
    if(str==null)str="";
    if(str.equals("null"))str="";
    str=str.trim();
    return str;
  }

/**转换编码*/
  public String toGBK(String str)
  {
   try
   {
   if(str==null)
      str="";
   else
      str=new String(str.getBytes("ISO-8859-1"),"GBK");
   }catch(Exception e){System.out.printIn("DealString::toGBK(string)运行时出错: 错误为: "+e);}
   return str;
}

/**UTF8*/UTF转换函数
  public String toUtf8String(String src)
 {
 byte[] b =src.getBytes();
 char[] c =new char[b.length];
 for(int i=0;i<b.length;i++)
  {
    c[i] =(char)(b[i]&0x00FF);
  }
  return new String(c);
}

/**分割字符串*/
  public String[] splitStr(String str.char c)
  {
   str+=c;
   int n=0;
   for(int i=0;i<str.length();i++)
   {
     if(str.charAt(i)==c)n++;
   }
   String out[]=new String[n];
   for(int i=0;i<n;i++)
   {
     int index =str.indexOf(c);
     out[i] =str.substring(0,index);
     str = str.substring(index+1,str.length());
   }
   return out;
 }

/**取得系统时间*/
public String getDateTime()
{
 java.text.SimpleDateFormat f=new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
 String time =f.format(new java.util.Date());
 return time;
}


/**替换字符串*/
  public String Replace(String source,String oldString,String newString)
{
StringBuffer output = new StringBuffer();

int lengthOfsource= source.length(); //源字符串长度
int lengthOfOld =oldString.length(); //老字符串长度
int posStart= 0; //开始搜索位置
int pos;         //搜索到老字符串的位置

while((pos = source.indexOf(oldString.posStart))>=0{
  output.append(source.substring(postStart.pos));
  output.append(newString)
  posStart =pos + lengthOfOld;
  }
  if (posStart<lengthOfSource){
     output.append(source.substring(posStart));
  return output.toString();
}

/**取得两个日期的天数之差*/
public long getDaysInterval(Date d1,Date d2)
{
return (d2.getTime()-d1.getTime()/86400000);
}

字符串右格式化函数
/**将字符串格式化为固定长度*/    功能是将字符串右对齐显示
public String toLengthStr(String instr,int len)
{
 int n=instr.length();
 for(int i=0;i<(len-n);i++)
{
 instr =" "+instr;
}
return instr;
}

字符串左格式化函数

字符串右格式化函数
/**将字符串格式化为固定长度*/    功能是将字符串左对齐显示
public String toLengthStrRight(String instr,int len)
{
 int n=instr.length();
 for(int i=0;i<(len-n);i++)
{
 instr =instr+" ";
}
return instr;
}

/**取得字符字节长度*/
public int byteLength(String str)
{
   return((str.getBytes()).length);
}

/**取得字符串从头开始指定长度子串*/
public String strByteCopy(String str,int nEnd)
{
   if(nEnd==0)
    return "";
   byte[] byteStr=str.getBytes();
   int k=byteStr.length;
   String strSub=new String(byteStr,0,nEnd<k?nEnd:k);
   if(strSub.length()==0)strSub=new String(byteStr,0,nEnd-1);
   return strSub;

}

posted on 2007-04-21 06:13  许维光  阅读(231)  评论(0)    收藏  举报