控制台输入与文件输入流问题

首先,这是龙书附录中“一个完整的编译器前端”的部分代码
下面是源代码,其中peek是使用控制台输入

 void readch() throws IOException {
       peek = (char)System.in.read(); 
       }

于是小弟想改成直接从txt文件中读取每个字符,就改成了如下

 void readch() throws IOException {
       File file = new File("E:\\test.txt");
       BufferedReader bufferedReader = new BufferedReader(new FileReader(file));
       String line = null;
       while((line = bufferedReader.readLine()) != null){
             peek = (char)bufferedReader.read();
                    } 
        bufferedReader.close();

       //peek = (char)System.in.read(); 
       }

然而运行结果却是这样的

 E:\front>java main.Main
Exception in thread "main" java.lang.Error: near line 1: syntax error
        at parser.Parser.error(Parser.java:15)
        at parser.Parser.match(Parser.java:19)
        at parser.Parser.block(Parser.java:29)
        at parser.Parser.program(Parser.java:23)
        at main.Main.main(Main.java:9)

其中我的文本是这样的
图片说明
实在是不知道怎么改了,寻求各位大佬们的帮助。

http://bbs.csdn.net/topics/392069141