2016-09-22 112 views
-3

我對java很陌生,我有這個詞法分析器程序用於我的任務,程序工作正常,我唯一的問題是我的輸入需要來自文本文件。如何從java中的文本文件讀取輸入

public class LexicalAnalyzer { 

public static void main(String[] args) { 

    Scanner reader = new Scanner(System.in); 
    System.out.println("Input strings: "); 
    String str = reader.nextLine(); 

    for (int i = 0; i < str.length(); i++) 
    { 
     switch (str.charAt(i)) 
     { 
      case '+': 
       System.out.println("Token: + Type: ADDITION"); 
       break; 
      case '-': 
       System.out.println("Token: - Type: SUBTRACTION"); 
       break; 
      case '*': 
       System.out.println("Token: * Type: MULTIPLICATION"); 
       break; 
      case '/': 
       System.out.println("Token:/ Type: DIVISION"); 
       break; 
      case '(': 
       System.out.println("Token: ( Type: LEFT PARENTHESIS"); 
       break; 
      case ')': 
       System.out.println("Token:) Type: RIGHT PARENTHESIS"); 
       break; 
      case '=': 
       System.out.println("Token: = Type: EQUALS"); 
       break; 
      case ';': 
       System.out.println("Token: ; Type: END"); 
       break; 
      case '0': 
       System.out.println("Token: 0 Type: NUM"); 
       break; 
      case '1': 
       System.out.println("Token: 1 Type: NUM"); 
       break; 
      case '2': 
       System.out.println("Token: 2 Type: NUM"); 
       break; 
      case '3': 
       System.out.println("Token: 3 Type: NUM"); 
       break; 
      case '4': 
       System.out.println("Token: 4 Type: NUM"); 
       break; 
      case '5': 
       System.out.println("Token: 5 Type: NUM"); 
       break; 
      case '6': 
       System.out.println("Token: 6 Type: NUM"); 
       break; 
      case '7': 
       System.out.println("Token: 7 Type: NUM"); 
       break; 
      case '8': 
       System.out.println("Token: 8 Type: NUM"); 
       break; 
      case '9': 
       System.out.println("Token: 9 Type: NUM"); 
       break; 
     } 
    }  

關於如何從文本文件中讀取輸入的任何想法?

+1

我敢肯定現有的回答你的問題是提供給你,當你輸入的標題到您的文章。 – ChiefTwoPencils

+0

提示:不要打印提示,並從「System.in」以外的地方打開掃描儀。 – RealSkeptic

+0

運行你的程序,像'java xxx.LexicalAnalyzer saka1029

回答

0

我給你從文本文件中讀取程序它會是有用的任何問題之前應該做一些搜索。

下面是代碼

public class ReadToFile { 

    public static void main(String[] args) { 
     try { 
      //File file = new File("C:\\Sample\\ketan.txt"); 
      FileReader fileReader = new FileReader("C:\\Sample\\xyz.txt"); 
      BufferedReader bufferedReader = new BufferedReader(fileReader); 
      String content = bufferedReader.readLine(); 
      System.out.println("Content of file is " + content); 
      bufferedReader.close(); 

     } catch (IOException ex) { 
      ex.printStackTrace(); 
     } 
    } 
}