2016-09-22 9 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

Fileクラスの以下のユーティリティメソッドを使用して、ファイルの内容を読み取ることができます。

Files.readAllLines()またはそれが

がラインとしてファイルを読み込み、ファイルから読み込むための多くの方法がある

あなたmession達成するためにすべての行を分割するので、簡単です。この https://www.mkyong.com/java/how-to-read-file-from-java-bufferedreader-example/Files.lines()

0

ルックbuufererdReaderを例として使用するなど

私はそれは簡単な質問だと思いますよuがstackoverflowの

上の任意の質問をする前に、いくつかの検索を行う必要があり、私があなたにテキストファイルからの読み取りのためのプログラムを与えています

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(); 
     } 
    } 
} 
関連する問題