java词法分析器(3) e.printStackTrace(System.err); }//设置待读文件名//////////////////////////////////////////////////// //保留字表文件 String reserveFileName = cfgString[0]; //类型种别码表文件 String classFileName = cfgString[1]; //需要分析的源文件 String sourceFileName = cfgString[2]; //输出文件 String outputFileName = cfgString[3];//////////////////////////////////////////////////// //创建词法分析器 AccidenceAnalyser aa = new AccidenceAnalyser(); aa.setFilesPath(reserveFileName, classFileName, sourceFileName, outputFileName); //建立所需要的文件对象 //初始化词法分析器 aa.initAA(); //初始化关键字表 aa.keyWordTable.initKeyWordTable(); //初始化类型种别码表 aa.classIdentity.initClassIdentityTable(); //开始进行词法分析 aa.startAA(); //分析完毕 }
//读取配置文件 private static String[] loadAACfg(String name) throws Exception { String cfgString[] = new String[4]; /*解析XML配置文件*/ try { /*创建文档工厂*/ DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); /*创建文档解析器*/ DocumentBuilder builder = factory.newDocumentBuilder();