Java StringTokenizer Example

In Java, you can use StringTokennizer class to split a String into different tokenas by defined delimiter.(space is the default delimiter). Here’re two StringTokennizer examples :

Example 1

Uses StringTokennizer to split a string by “space” and “comma” delimiter, and iterate the StringTokenizer elements and print it out one by one.

package com.mkyong;
 
import java.util.StringTokenizer;
 
public class App {
    public static void main(String[] args) {
 
        String str = "This is String , split by StringTokenizer, created by mkyong";
        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

---- Split by space ------
This
is
String
,
split
by
StringTokenizer,
created
by
mkyong
---- Split by comma ',' ------
This is String 
 split by StringTokenizer
 created by mkyong

Example 2

Read a csv file and use StringTokenizer to split the string by “|” delimiter, and print it out.

File : c:/test.csv

package com.mkyong;
 
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.StringTokenizer;
 
public class ReadFile {
 
    public static void main(String[] args) {
 
    BufferedReader br = null;
 
    try {
 
        String line;
 
        br = new BufferedReader(new FileReader("test.csv"));
 
        while ((line = br.readLine()) != null) {
           System.out.println(line);
 
           StringTokenizer stringTokenizer = new StringTokenizer(line, "|");
 
           while (stringTokenizer.hasMoreElements()) {
 
            Integer id = Integer.parseInt(stringTokenizer.nextElement().toString());
            Double price = Double.parseDouble(stringTokenizer.nextElement().toString());
            String username = stringTokenizer.nextElement().toString();
 
            StringBuilder sb = new StringBuilder();
            sb.append("\nId : " + id);
            sb.append("\nPrice : " + price);
            sb.append("\nUsername : " + username);
            sb.append("\n*******************\n");
 
            System.out.println(sb.toString());
           }
        }
 
        System.out.println("Done");
 
    } catch (IOException e) {
        e.printStackTrace();
    } finally {
        try {
            if (br != null)
                br.close();
 
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
 
    }
}

Output

1| 3.29| mkyong
 
Id : 1
Price : 3.29
Username :  mkyong
*******************
 
2| 4.345| eclipse
 
Id : 2
Price : 4.345
Username :  eclipse
*******************
 
Done

 

posted @ 2014-10-24 02:56  wuhn  阅读(513)  评论(0编辑  收藏  举报