Split em String [RESOLVIDO]

Em uma aplicação JME, como eu faço Split em uma String? A classe String não tem o método split, e a CLDC não tem a classe StringTokenizer.

Como posso fazer um split em uma String? Pretendo fazer persistência em arquivos comuns de texto, mas estou tendo esse problema em separar os valores retornados de cada linha do arquivo.

[color=darkblue]

Apenas uma sugestão, não sei se funciona (Gambiarra) : [/color]

          String teste = "e;e;e;e;e;e;";
          teste.replaceAll(";", ",");
          String arrayString[] = {teste};

Acho que nesse caso você vai ter que fazer na unha!

To aqui com um código de split feito na unha, mas o token só pode ser um char:

public String[] split(String string, char token)
		{
		int x,y,z;
		y = 0;
		z = 0;
			for (x = 0;x &lt string.length();x++)
			{
				if (string.charAt(x) == token)
				{
				y++;
				}
			}
		String[] split = new String[++y];
		y = 0;
			for (x = 0;x &lt= string.length();x++)
			{
				if ((x == string.length()) || (string.charAt(x) == 'token'))
				{
				string[y++] = string.substring(z,x);
				z = ++x;
				}
			}
		return split;
		}

Não sei se te ajuda.

Inté.

    public Vector tokenize(String s, String token, int tamanho) 
    {
        Vector mensagem = new Vector();
 		
 	boolean foundToken = true;
 		
 	while(foundToken) 
 	{
            if(s.indexOf(token) > -1) 
            {
                mensagem.addElement(s.substring(0, s.indexOf(token)));
                s = s.substring(s.indexOf(token)+value);
                foundToken = true;
            }
            else 
            {
                mensagem.addElement(s);
 		foundToken = false;
            }
        }
        return mensagem;
    }

s => sua string
t => seu token
tamanho => tamanho do seu token(ex: ### = 3)

espero q te ajude

[quote=eduardo.carvalho][code]
public Vector tokenize(String s, String token, int tamanho)
{
Vector mensagem = new Vector();

boolean foundToken = true;
	
while(foundToken) 
{
        if(s.indexOf(token) > -1) 
        {
            mensagem.addElement(s.substring(0, s.indexOf(token)));
            s = s.substring(s.indexOf(token)+value);
            foundToken = true;
        }
        else 
        {
            mensagem.addElement(s);
	foundToken = false;
        }
    }
    return mensagem;
}

[/code]

s => sua string
t => seu token
tamanho => tamanho do seu token(ex: ### = 3)

espero q te ajude[/quote]

Esse código parece bom, só não vejo propósito no parâmetro tamanho.

Inté.

[quote=KWill]
Esse código parece bom, só não vejo propósito no parâmetro tamanho.
Inté.[/quote]

É que esta linha:

s = s.substring(s.indexOf(token)+value);

Está com uma variável trocada, o correto seria:

s = s.substring(s.indexOf(token) + tamanho);

Embora o tamanho do token pudesse ser calculado dentro do método.

Valew galera, deixei assim, aproveitando o código do colega:

import java.util.Vector;

public final class StringTokenizer
  {
   private String str;
   private String token;

   public StringTokenizer(String str, String token)
     {
      this.str = str;
      this.token = token;
     }

   public Vector getTokens()
     {
      Vector tokens = new Vector();

      boolean foundToken = true;

      while(foundToken)
        {
         if (str.indexOf(token) > -1)
           {
            tokens.addElement(str.substring(0, str.indexOf(token)));
            str = str.substring(str.indexOf(token) + token.length());
            foundToken = true;
           }
         else
           {
            tokens.addElement(str);
            foundToken = false;
           }
        }

      return (tokens);
     }
  }