我正在開發一個java掃描器項目。然後掃描器將掃描代碼文件並標識所有的標記並將它們列爲用戶的輸出。如果無效標記,掃描儀應該提及給定標記無效。 這裏是我的代碼如何生成所有字符串和所有的++, - - 針對java輸入文件的數字,還提到這是字符串還是單個字母?
try {
FileReader fin = null;
try {
fin = new FileReader(jTextField1.getText());
} catch (FileNotFoundException ex) {
Logger.getLogger(NewJFrame.class.getName()).log(Level.SEVERE, null, ex);
}
BufferedReader br= new BufferedReader(fin);
String line = null;
while ((line = br.readLine()) != null) {
// Get ending position
System.out.println(line);
StringTokenizer st = new StringTokenizer(line, "abcdefghijklmnopqrstuvwxyz[ =-+++--';().*{}[],[email protected]#$%^&/]", true);
int caret=jTextArea1.getCaretPosition();
while(st.hasMoreTokens()){
switch(st.nextToken()){
case "++":
jTextArea1.insert("++"+" "+":Unary Operator "+"\n",caret);
break;
case "--":
jTextArea1.insert("--"+" "+":Unary Operator "+"\n",caret);
break;
case "!":
jTextArea1.insert("!"+" "+":Unary Operator "+"\n",caret);
break;
case "+":
jTextArea1.insert("+"+" "+":Airthmatic Operator "+"\n",caret);
break;
case "-":
jTextArea1.insert("-"+" "+":Airthmatic Operator "+"\n",caret);
break;
case "*":
jTextArea1.insert("*"+" "+":Airthmatic Operator "+"\n",caret);
break;
case "/":
jTextArea1.insert("/"+" "+":Airthmatic Operator "+"\n",caret);
break;
case "%":
jTextArea1.insert("%"+" "+":Airthmatic Operator "+"\n",caret);
break;
case "<<":
jTextArea1.insert("<<"+" "+":Rational Operator "+"\n",caret);
break;
case ">>":
jTextArea1.insert(">>"+" "+":Rational Operator "+"\n",caret);
break;
case "=":
jTextArea1.insert("="+" "+":Rational Operator "+"\n",caret);
break;
case "(":
jTextArea1.insert("("+" "+":Symbol "+"\n",caret);
break;
case "&":
jTextArea1.insert("&"+" "+":Conditional Operator "+"\n",caret);
break;
case "|":
jTextArea1.insert("|"+" "+":Conditional Operator "+"\n",caret);
break;
case ")":
jTextArea1.insert(")"+" "+":Symbol "+"\n",caret);
break;
case "{":
jTextArea1.insert("{"+" "+":Symbol "+"\n",caret);
break;
case "}":
jTextArea1.insert("}"+" "+":Symbol "+"\n",caret);
break;
case "[":
jTextArea1.insert("["+" "+":Symbol "+"\n",caret);
break;
case "]":
jTextArea1.insert("]"+" "+":Symbol "+"\n",caret);
break;
case ".":
jTextArea1.insert("."+" "+":Symbol "+"\n",caret);
break;
case ",":
jTextArea1.insert(","+" "+":Symbol "+"\n",caret);
break;
case ";":
jTextArea1.insert(";"+" "+":Symbol "+"\n",caret);
break;
case ":":
jTextArea1.insert(":"+" "+":Symbol "+"\n",caret);
break;
case "'":
jTextArea1.insert("'"+" "+":Symbol "+"\n",caret);
break;
default :
break;
這裏是我的輸出http://s11.postimg.org/962xs85r7/Untitled.jpg 程序輸出適用於所有支架和運營商,因爲我在switch語句中提及,但我想這是顯示所有的字符串作爲顯示輸出,也提它是字符串,也是++, - 數字,但是我怎樣才能使用字符串檢查和++, - 在switch語句中的數字。例如:system:string ab:字符串和輸出中顯示的所有字符串相同,謝謝
嘗試澄清的問題,至少我不明白你實際上問......特別是「例如」一段代碼(?)結尾問題的正確格式,這可能是關鍵。 – hyde
但是,如果我理解正確,你不能。使用'if'代替(可能在'switch'的'default:'部分)。 – hyde
我問「我怎樣才能生成所有的字符串和++, - 在java輸入文件中的數字」。我想要這樣的輸出:如果文件包含system.out.println,那麼system:String。 :operator out:string println:string –