KickJava   Java API By Example, From Geeks To Geeks.

Java > Open Source Codes > ch > ethz > ssh2 > util > Tokenizer


1
2 package ch.ethz.ssh2.util;
3
4 /**
5  * Tokenizer. Why? Because StringTokenizer is not available in J2ME.
6  *
7  * @author Christian Plattner, plattner@inf.ethz.ch
8  * @version $Id: Tokenizer.java,v 1.1 2005/12/05 17:13:27 cplattne Exp $
9  */

10 public class Tokenizer
11 {
12     /**
13      * Exists because StringTokenizer is not available in J2ME.
14      * Returns an array with at least 1 entry.
15      *
16      * @param source must be non-null
17      * @param delimiter
18      * @return an array of Strings
19      */

20     public static String JavaDoc[] parseTokens(String JavaDoc source, char delimiter)
21     {
22         int numtoken = 1;
23
24         for (int i = 0; i < source.length(); i++)
25         {
26             if (source.charAt(i) == delimiter)
27                 numtoken++;
28         }
29
30         String JavaDoc list[] = new String JavaDoc[numtoken];
31         int nextfield = 0;
32
33         for (int i = 0; i < numtoken; i++)
34         {
35             if (nextfield >= source.length())
36             {
37                 list[i] = "";
38             }
39             else
40             {
41                 int idx = source.indexOf(delimiter, nextfield);
42                 if (idx == -1)
43                     idx = source.length();
44                 list[i] = source.substring(nextfield, idx);
45                 nextfield = idx + 1;
46             }
47         }
48
49         return list;
50     }
51 }
52
Popular Tags