La classe StringTokenizer è usata per dividere una stringa in varie sottostringhe, delimitate da un carattere speciale.
1° Esempio – Lettura Stringa
Divisione di una stringa con il carattere speciale blank e la virgola.
StringTokenizer.java
package com;
import java.util.StringTokenizer;
public class StringTokenizerTest {
/**
* @param args
*/
public static void main(String[] args) {
String str = "prova1 prova2 , test1 test2, prova3 test3";
StringTokenizer st = new StringTokenizer(str);
System.out.println("---- Split by space ------");
while (st.hasMoreElements()) {
System.out.println(st.nextElement());
}
System.out.println("---- Split by comma ',' ------");
StringTokenizer st2 = new StringTokenizer(str, ",");
while (st2.hasMoreElements()) {
System.out.println(st2.nextElement());
}
}
}
output:
2 Esempio: Lettura File CVS
Le stringhe da splittare sono lette da un file cvs.
friends.cvs
prova| prova1 | prova2| prova3
test | test1 | test2 | test3
CaricaFile.java
package com;
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.StringTokenizer;
public class CaricaFile {
public static void caricaUsers() throws IOException {
BufferedReader reader = new BufferedReader(new FileReader(
"D:\friends.txt"));
String line = reader.readLine();
while (line != null) {
StringTokenizer stRecord = new StringTokenizer(line, "|");
while (stRecord.hasMoreTokens()) {
String record = stRecord.nextToken();
System.out.print(record + " ");
}
System.out.println("");
line = reader.readLine();
}
}
public static void main(String[] args) throws FileNotFoundException,
IOException {
caricaUsers();
}
}
Output: