⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 operationanalyse.java

📁 词法分析器 可以识别c++的源码,自动生成词法分析表, 在分析结束后会指出源代码中可能的错误 待分析的源代码要以 *源代码.txt的格式保存
💻 JAVA
字号:
package accidenceAnalyse;

import java.io.*;
import java.util.ArrayList;


public class OperationAnalyse implements TokenAnalyse{
	
	class OperationTable {
		private int ID ;
		private String name ;
		public OperationTable (int ID , String name) {
			this.ID = ID ;
			this.name = name ;
		}
		public int getID() {
			return this.ID ;
		}
		public String getname() {
			return this.name ;
		}
	}
	
	public OperationTable  getOperationTable(int ID , String name) {
		return new OperationTable (ID , name) ;
	}	
	

	public void analyse(String str ,ArrayList<TokenTable> list , ArrayList<String> errorList , int textLine){
		if (separateAnalyse.analyse(str, list, errorList, textLine)){
			insertOperationTable (5 , str);
			return;
		}
		
		else
			if (counterAnalyse.analyse(str, list, errorList, textLine))
				insertOperationTable (4 , str);
	}
	
	protected void insertOperationTable (int ID , String name) {
		operationTable.add(getOperationTable(ID , name));
	}
	
	public void getArrayList (String filename) {
		try{
			DataOutputStream out = new DataOutputStream(new FileOutputStream("accidenceAnalyse\\accidenceAnalyseTable\\"+filename+"_OperationTable.txt"));
			try{
				for (OperationTable o : operationTable){
					out.writeUTF(""+o.getID());
					out.writeUTF(o.getname());
				}
			}catch(IOException e){}
			out.close();
		}catch(Exception e){}
	}
	
	private SeparateAnalyse separateAnalyse = new SeparateAnalyse();
	private CounterAnalyse counterAnalyse = new CounterAnalyse();
	private static ArrayList<OperationTable> operationTable = new ArrayList<OperationTable>() ;
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -