StringTokenizer

tameck

Erfahrenes Mitglied
Hi

ich muss einen string "auseinander nehmen" und will den StringTokenizer verwenden hab aber leider keine ahnung wie ich den genau verwende ....

wär super wenn mir jemand kurz ein beispiel zeigen könnte ...

danke

gruß chris
 
Die SuFu hätte Dir reichlich Ergebnisse geliefert...

Hier ist ein Beispiel:
Java:
import java.util.ArrayList;
import java.util.StringTokenizer;

public class StrTokenizerExample {
	
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		
		String str 			   = "Ich bin mal ein längerer unsinniger Satz " +
							 	 "ohne jegliche Bedeutung.";
		StringTokenizer strTk  = new StringTokenizer(str);
		ArrayList       tkList = new ArrayList();
		while (strTk.hasMoreTokens()) {
			tkList.add(strTk.nextToken().toString());
		}
		System.out.println(tkList.get(2));
		
		
	}
}
 
Zuletzt bearbeitet von einem Moderator:
Geht aber auch ohne ArrayList ...

Java:
import java.util.StringTokenizer;

public class Test2 {
	static String string = "123 Test;Noch_ein_Test.Mehr-Test";
	
	public static void main (String [] args) {
		StringTokenizer tok = new StringTokenizer(string,";. -");
		while (tok.hasMoreTokens())
			System.out.println(tok.nextToken());
	}
}
Du kannst halt dem StringTokenizer mitgeben, an welchen Zeichen er trennen soll. Wenn du nur ein bestimmtes Zeichen hast wäre vielleicht auch drüber nachzudenken es einfach mit String.split() zu versuchen. Ohne dass man Trennzeichen angibt trennt der StringTokenizer halt an Leerzeichen, Tabulator und Zeilenwechsel. In diesem Fall hab ich ; . Leerzeichen und - angegeben. Wobei die Trennzeichen automatisch gelöscht werden, also nicht mit ins Token wandern.

Ergibt als Ausgabe:
Code:
123
Test
Noch_ein_Test
Mehr
Test
 
aber wieso werden mir

java.util.String.Tokenizer
new StringTokenizer(str)
hasMoreTokens
nextToken

als fehler angezeigt ?
 
jo hatte ich eingebunden kann das an der verwendeten java version liegen ?

weil mit 1.4 gehts einwandfrei mit 1.6 aber nich
 
Zurück