1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
|
import java.io.*;
import antlr.RecognitionException;
import antlr.TokenStreamException;
import antlr.TokenStreamRecognitionException;
import antlr.TokenStreamRetryException;
import antlr.CharBuffer;
class Main {
// find new line chars for this OS
private static final String nl = System.getProperty("line.separator","\n");
public static void main(String[] args) {
InputStreamReader reader = null;
FileInputStream inputStream = null;
// this one command redirects all System.out and System.err to debug file
Debug.log.println(" Output for Unicode example");
System.out.println(" The input file is:"+args[0]);
try {
inputStream = new FileInputStream(args[0]);
} catch (FileNotFoundException ex) {
System.out.println("Could not find file.");
System.exit(1);
}
try {
reader = new InputStreamReader(inputStream,"SJIS");
} catch (UnsupportedEncodingException ex) {
System.out.println("Invalid encoding");
System.exit(1);
}
BufferedReader bufferedReader = new BufferedReader(reader);
try {
String line = bufferedReader.readLine();
while (line != null) {
System.out.println(line);
line = bufferedReader.readLine();
}
inputStream.close();
} catch (IOException ex) {
System.out.println(ex.getMessage());
System.exit(1);
}
System.out.println("\nThe parse output is:");
try {
inputStream = new FileInputStream(args[0]);
} catch (FileNotFoundException ex) {
System.out.println("Could not find file.");
System.exit(1);
}
try {
reader = new InputStreamReader(inputStream,"SJIS");
} catch (UnsupportedEncodingException ex) {
System.out.println("Invalid encoding");
System.exit(1);
}
CharBuffer cb = new CharBuffer(reader);
try {
UnicodeLexer lexer = new UnicodeLexer(cb);
UnicodeParser parser = new UnicodeParser(lexer);
parser.program();
} catch(Exception e) {
// catch all mainly IOExceptions
System.err.println("exception: "+e);
}
}
}
|