Using the StringReader class


The StringReader class is not of much use by itself. What you can do with a StringReader alone is often better done with the methods of the String class.
The StringReader class can however be convenient in use with other classes that require an argument of type Reader.
In this example we show a simple example by using the StreamTokenizer to count words in a String (this can for sure be done other ways too but as said, it's an example).
We create a StringReader object and pass it to a StreamTokenizer that handles the reading and parsing from it to count how many words there are in the String.

If you run the code the output will be 9 words.


import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.io.StreamTokenizer;
import java.io.StringReader;

/**
 *
 * @author javadb.com
 */

public class Main {
    
    /**
     * Example method for using the StringReader class
     */

    public void countWordsInAString() {
        
        StreamTokenizer streamTokenizer = null;

        String stringToBeParsed = "The quick brown fox jumped over the lazy dog";
        StringReader reader = new StringReader(stringToBeParsed);
        
        int wordCount = 0;
        
        try {
            
            streamTokenizer = new StreamTokenizer(reader);
            
            while (streamTokenizer.nextToken() != StreamTokenizer.TT_EOF) {
                
                if (streamTokenizer.ttype == StreamTokenizer.TT_WORD)
                    wordCount++;
            }
            
            System.out.println("Number of words in file: " + wordCount);
            
        } catch (FileNotFoundException ex) {
            ex.printStackTrace();
        } catch (IOException ex) {
            ex.printStackTrace();
        }
    }
    
    /**
     * @param args the command line arguments
     */

    public static void main(String[] args) {
        new Main().countWordsInAString();
    }
}

Do you know your Java?
Take a Ten-Question-Java-Quiz!

Bookmark and Share




Need help with your Java code? It's secure and confidential.
This is how it works:
Send a detailed description of what you need help with, the more details the better. Also provide a deadline for when it has to be finished. More time means better chance of putting your request into the schedule.

If the request is serious you will shortly receive an email with the price, to which you have to respond if you accept.

Once you have accepted, the work will begin on developing your code by an experienced Java developer. When the code is finished a link to a secure payment will be sent to you.

The source code is then sent to you once the payment is completed.

IMPORTANT! The request needs to be very detailed, else it may be ignored.


Write your detailed request here:

E-mail address: