al
Posts: 11
Nickname: allelopath
Registered: Jun, 2003
|
|
Re: Stream Tokeneizer
|
Posted: Oct 21, 2003 8:44 AM
|
|
Note that StreamTokenizer(InputStream is) is deprecated. As of JDK version 1.1, the preferred way to tokenize an input stream is to convert it into a character stream, for example:
Reader r = new BufferedReader(new InputStreamReader(is)); StreamTokenizer st = new StreamTokenizer(r);
This code does what you want:
import java.io.*; import java.util.StringTokenizer;
public class STTest { private String line = ""; private String[] lineOfTokens = null; private StringTokenizer stringTokens;
public STTest() { try { BufferedReader br = new BufferedReader(new FileReader("testfile.dat"));
while ( (line = br.readLine()) != null ) { stringTokens = new StringTokenizer(line, "()"); lineOfTokens = new String[stringTokens.countTokens()]; int x = 0; } catch (FileNotFoundException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); }
for (int i = 0; i < lineOfTokens.length; i++) { lineOfTokens[i] = stringTokens.nextToken(); }
for (int i = 0; i < lineOfTokens.length; i++) { System.out.println (lineOfTokens[i] + "\t"); } }
public static void main(String[] args) { STTest sttest = new STTest(); }
}
|
|