view src/com/trilead/ssh2/util/Tokenizer.java @ 271:4ae4b1571852

Added tag stable-1.8.7 for changeset 45d1fcc1a356
author Carl Byington <carl@five-ten-sg.com>
date Wed, 16 Jul 2014 13:04:24 -0700
parents 0ce5cc452d02
children
line wrap: on
line source


package com.trilead.ssh2.util;

/**
 * Tokenizer. Why? Because StringTokenizer is not available in J2ME.
 *
 * @author Christian Plattner, plattner@trilead.com
 * @version $Id: Tokenizer.java,v 1.1 2007/10/15 12:49:57 cplattne Exp $
 */
public class Tokenizer {
    /**
     * Exists because StringTokenizer is not available in J2ME.
     * Returns an array with at least 1 entry.
     *
     * @param source must be non-null
     * @param delimiter
     * @return an array of Strings
     */
    public static String[] parseTokens(String source, char delimiter) {
        int numtoken = 1;

        for (int i = 0; i < source.length(); i++) {
            if (source.charAt(i) == delimiter)
                numtoken++;
        }

        String list[] = new String[numtoken];
        int nextfield = 0;

        for (int i = 0; i < numtoken; i++) {
            if (nextfield >= source.length()) {
                list[i] = "";
            }
            else {
                int idx = source.indexOf(delimiter, nextfield);

                if (idx == -1)
                    idx = source.length();

                list[i] = source.substring(nextfield, idx);
                nextfield = idx + 1;
            }
        }

        return list;
    }
}