2016-09-22 2 views
-3

Ich bin irgendwie neu in Java und ich habe dieses lexikalische Analyseprogramm für meine Aufgabe, das Programm funktioniert gut und mein einziges Problem ist meine Eingabe muss von einem Text kommen Datei.Wie Sie Ihre Eingabe aus einer Textdatei in Java lesen

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; 
     } 
    }  

Irgendwelche Ideen, wie ich meine Eingabe aus einer Textdatei lesen kann?

+1

Ich bin sicher, eine vorhandene Antwort auf Ihre Frage zu Ihnen angeboten wurde, wenn Sie den Titel Ihres Beitrags eingegeben. – ChiefTwoPencils

+0

Hinweis: Drucken Sie keine Eingabeaufforderungen und öffnen Sie Ihren Scanner von etwas anderem als 'System.in'. – RealSkeptic

+0

Führen Sie Ihr Programm wie 'java xxx.LexicalAnalyzer saka1029

Antwort

0

Schauen Sie sich das https://www.mkyong.com/java/how-to-read-file-from-java-bufferedreader-example/ es so einfach ist

die Datei als Zeilen lesen und teilen jede Zeile Ihre mession

gibt es viele Möglichkeiten, aus einer Datei zu lesen, zu erreichen wie buufererdReader als Beispiel verwenden

ich denke, es ist eine einfache Frage yo u sollte eine Suche durchführen, bevor sie eine Frage stellen auf Stackoverflow

hoffen, dass es nützlich sein werde für Sie

0

ich Ihnen das Programm gebe für von Textdatei zu lesen.

Hier ist der Code

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(); 
     } 
    } 
} 
Verwandte Themen