隨筆-144  評論-80  文章-1  trackbacks-0

          在java中處理帶分隔符數據的方式是,提供了一個系統類java.util.StringTokenizer來進行處理。例如 StringTokenizer(String  content,String  delim)將在字符串content的基礎上創建一個StringTokenizer對象,并用delim來作為新的分隔符,如果省略delim,則以系統缺省的分隔符來作為原來各分隔符的替代。

          實際上還有第三個參數,true/false,如果為true則返回值還包含分隔符本身。可以加以省略。

          StringTokenizer的構造函數:
          StringTokenizer(String str)
          StringTokenizer(String str,String delimiters)
          StringTokenizer(String str,String delimiters,boolean delimiAsToken)


          關于Token的另一些方法,如public  String  nextToken(),  public  bolean  hasMoreTokens(),  public  int  countTokens()等,請參考有關java書籍手冊。

          一個例子:
               實現把一個特殊結構的字符串轉變成字符串數組



          public class CCStrTools
          {
            
          public static String[] str2Array(String str, String separator)
              
          {
                  
          if (str == null || separator == null || (str.trim()).length() == 0)
                      
          return null;

                  
          if (str.substring(str.length() - separator.length(),
                                    str.length()).equals(separator))
                      str 
          = str.substring(0, str.length() - separator.length());
                      
          //if(str.charAt(str.length()-1)==',')
                      
          //str=str.substring(0,str.length()-1);

                  StringTokenizer token 
          = new StringTokenizer(str, separator);
                  String[] array 
          = new String[token.countTokens()];

                  
          int i = 0;

                  
          while (token.hasMoreTokens())
                  
          {
                      array[i] 
          = token.nextToken(separator);
                      i
          ++;
                  }


                  
          return array;
              }



              
          public static void main(String []args)
            
          {
                    
               String s3 
          ="3@4@5@6@7@";
               
               String w1[] 
          =CCStrTools.str2Array(s3,"@");
               
          for(int i=0;i<w1.length;i++)
               
          {
                 System.
          out.println(w1[i]);
               }

              
          // System.out.println(w1.length);
              
                 
               
            }



          }
          posted on 2005-03-25 11:29 小力力力 閱讀(938) 評論(1)  編輯  收藏 所屬分類: JAVA

          評論:
          # re: StringTokenizer的學習(1) 2013-10-22 23:35 | Sevenok
          能不能用這個方法替代字母,比如把to children變成too children  回復  更多評論
            
          主站蜘蛛池模板: 南城县| 襄樊市| 霞浦县| 东源县| 博湖县| 灵武市| 明光市| 防城港市| 航空| 淮北市| 仁化县| 广元市| 南和县| 巨鹿县| 中西区| 凯里市| 四会市| 汉寿县| 象州县| 崇仁县| 永春县| 土默特左旗| 瑞昌市| 阿拉善左旗| 杂多县| 庆云县| 吴旗县| 邵东县| 阜城县| 临沭县| 玉田县| 开平市| 彰化县| 颍上县| 岳阳县| 张家界市| 称多县| 教育| 梅河口市| 东山县| 星子县|