贴个实用的 StringTokenizer类

Java中的这个类很好用,但在.net却没有提供,只好手动写一个了 
 
/// <summary>
 ///  StringTokenizer 单词分析类
 /// </summary>
 public class StringTokenizer
 {
  // data语句,delimiter是单词之间的分隔符
  private string data,delimiter;
  // 存放单词的字符串组
  private string[] tokens;
  // 索引号
  private int index;
  
  /// <summary>
  ///  StringTokenizer:构造函数
  /// </summary>
  /// <param name="dataLine"></param>
  public StringTokenizer(string dataLine)
  {
   init(dataLine," ");
  }

  /// <summary>
  ///  StringTokenizer:重载构造函数
  /// </summary>
  /// <param name="dataLine"></param>
  /// <param name="delim"></param>
  public StringTokenizer(string dataLine,string delim)
  {
   init(dataLine,delim);
  }

  private void init(string dataLine,String delim)
  {
   data = dataLine;
   delimiter = delim;
   //
   // 将字符串转化为数组

   tokens = data.Split(delimiter.ToCharArray());
   index = 0;
  }
  
  // 判断是否还有单词
  public bool hasMoreElements()
  {
   return (index < (tokens.Length));
  }

  public string nextElement()
  {
   //获得下一个单词
   if(index < tokens.Length)
    return tokens[index++];
   else
    return "";
  }
 };

posted on 2004-04-29 09:40  九斤老太  阅读(2551)  评论(4编辑  收藏  举报