1 /* 2 * Copyright (c) 2006-2011 Christian Plattner. All rights reserved. 3 * Please refer to the LICENSE.txt for licensing details. 4 */ 5 package ch.ethz.ssh2.util; 6 7 /** 8 * Tokenizer. Why? Because StringTokenizer is not available in J2ME. 9 * 10 * @author Christian Plattner 11 * @version 2.50, 03/15/10 12 */ 13 public class Tokenizer 14 { 15 /** 16 * Exists because StringTokenizer is not available in J2ME. 17 * Returns an array with at least 1 entry. 18 * 19 * @param source must be non-null 20 * @param delimiter 21 * @return an array of Strings 22 */ 23 public static String[] parseTokens(String source, char delimiter) 24 { 25 int numtoken = 1; 26 27 for (int i = 0; i < source.length(); i++) 28 { 29 if (source.charAt(i) == delimiter) 30 numtoken++; 31 } 32 33 String list[] = new String[numtoken]; 34 int nextfield = 0; 35 36 for (int i = 0; i < numtoken; i++) 37 { 38 if (nextfield >= source.length()) 39 { 40 list[i] = ""; 41 } 42 else 43 { 44 int idx = source.indexOf(delimiter, nextfield); 45 if (idx == -1) 46 idx = source.length(); 47 list[i] = source.substring(nextfield, idx); 48 nextfield = idx + 1; 49 } 50 } 51 52 return list; 53 } 54 } 55