Java.io.StreamTokenizer.slashStarComments() Method
Description
The java.io.StreamTokenizer.slashStarComments(boolean flag) method determines whether or not the tokenizer recognizes C-style comments. If the flag argument is true, this stream tokenizer recognizes C-style comments. All text between successive occurrences of /* and */ are discarded. If the flag argument is false, then C-style comments are not treated specially.
Declaration
Following is the declaration for java.io.StreamTokenizer.slashStarComments() method
public void slashStarComments(boolean flag)
Parameters
flag -- true indicates to recognize and ignore C-style comments.
Return Value
This method does not return a value
Exception
NA
Example
The following example shows the usage of java.io.StreamTokenizer.slashStarComments() method.
package com.tutorialspoint;
import java.io.*;
public class StreamTokenizerDemo {
public static void main(String[] args) {
String text = "Hello. This /*is a text \n that*/ will be split "
+ "into tokens. 1+1=2";
try {
// create a new file with an ObjectOutputStream
FileOutputStream out = new FileOutputStream("test.txt");
ObjectOutputStream oout = new ObjectOutputStream(out);
// write something in the file
oout.writeUTF(text);
oout.flush();
// create an ObjectInputStream for the file we created before
ObjectInputStream ois =
new ObjectInputStream(new FileInputStream("test.txt"));
// create a new tokenizer
Reader r = new BufferedReader(new InputStreamReader(ois));
StreamTokenizer st = new StreamTokenizer(r);
// set slash-star comments as recognizable
st.slashStarComments(true);
// print the stream tokens
boolean eof = false;
do {
int token = st.nextToken();
switch (token) {
case StreamTokenizer.TT_EOF:
System.out.println("End of File encountered.");
eof = true;
break;
case StreamTokenizer.TT_EOL:
System.out.println("End of Line encountered.");
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 + " encountered.");
if (token == '!') {
eof = true;
}
}
} while (!eof);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
Let us compile and run the above program, this will produce the following result:
Word: BHello. Word: This Word: will Word: be Word: split Word: into Word: tokens. Number: 1.0 + encountered. Number: 1.0 = encountered. Number: 2.0 End of File encountered.