Home »
Java programming language
Java StreamTokenizer wordChars() Method with Example
StreamTokenizer Class wordChars() method: Here, we are going to learn about the wordChars() method of StreamTokenizer Class with its syntax and example.
Submitted by Preeti Jain, on April 23, 2020
StreamTokenizer Class wordChars() method
- wordChars() method is available in java.io package.
- wordChars() method is used to denotes that all the characters lies in the given range(st[start], en[end]) are word constituents. Word is made up of word constituents followed by 0 or any number of word constituents or number constituents.
- wordChars() method is a non-static method, it is accessible with the class object only and if we try to access the method with the class name then we will get an error.
- wordChars() method does not throw an exception at the time of representing word constituents.
Syntax:
public void wordChars(int st, int en);
Parameter(s):
- int st – represents the starting endpoint of the given range.
- int en – represents the ending endpoint of the given range.
Return value:
The return type of the method is void, it returns nothing.
Example:
// Java program to demonstrate the example
// of void wordChars(int st, int en) method
// of StreamTokenizer
import java.io.*;
public class WordChars {
public static void main(String[] args) {
String str = "Hi, This is \n a mathematical expression :\n " +
" 2 * 4 = 8 " + "8 + 5 = 13";
try {
// Instantiates FileOutputStream and ObjectOutputStream
FileOutputStream fos_stm = new FileOutputStream("D:\\includehelp.txt");
ObjectOutputStream obj_out_stm = new ObjectOutputStream(fos_stm);
// By using writeUTF() method is to
// write the given string in the file
obj_out_stm.writeUTF(str);
obj_out_stm.flush();
// Instantiates FileOutputStream and ObjectOutputStream
ObjectInputStream obj_in_stm = new ObjectInputStream(new FileInputStream("D:\\includehelp.txt"));
// Instantiates StreamTokenizer and Reader
Reader reader = new BufferedReader(new InputStreamReader(obj_in_stm));
StreamTokenizer st = new StreamTokenizer(reader);
// By using wordChars() method is to
// represent all the chars lies in between
// (i,m) are word constituents
st.wordChars('i', 'm');
// Here, we are considering initially
// file is not empty
boolean end_of_file = false;
while (!end_of_file) {
// By using nextToken() method is to
// parse the next token from the stream
int token = st.nextToken();
switch (token) {
case StreamTokenizer.TT_EOF:
System.out.println("End of File Found");
end_of_file = true;
break;
case StreamTokenizer.TT_EOL:
System.out.println("End of Line Found");
break;
case StreamTokenizer.TT_WORD:
System.out.println("word: " + st.sval);
break;
case StreamTokenizer.TT_NUMBER:
System.out.println("number: " + st.nval);
break;
default:
System.out.println((char) token + " Found.");
}
}
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
Output
@ Found.
word: Hi
, Found.
word: This
word: is
word: a
word: mathematical
word: expression
: Found.
number: 2.0
* Found.
number: 4.0
= Found.
number: 8.0
number: 8.0
+ Found.
number: 5.0
= Found.
number: 13.0
End of File Found