切換
舊版
前往
大廳
主題

意義不明的java練習_③

深海異音 | 2013-12-11 15:37:10 | 巴幣 0 | 人氣 757

程式設計實習  的小考的題目:


在專案資料夾裡面創建一個【data.txt】,

data.txt的內容
小0A
0000
小0B
123
小0C
999
小0D
11

說明:
第1行:第1個使用者的名稱
第2行:
第1個使用者的密碼
第3行:第2個使用者的名稱
...以此類推

  1. 使用FileReader讀出文字data.txt的資料並且印出。
  2. 使用BufferedReader來輸入使用者名稱&密碼,如果都正確澤印出【比對結果=符合】,其中一項資料錯誤則印出【資料錯誤】。
  3. 讓程式可以重複執行。





程式碼
import  java.io.BufferedReader;
import  java.io.FileReader;
import  java.io.InputStreamReader;
import  java.util.ArrayList;

public  class  CH4  {

   public static  void  main(String[]  args)  throws  Exception {

      BufferedReader  data =  new  BufferedReader(
            new  FileReader("src/data.txt"));
      BufferedReader  brffer =  new  BufferedReader(
            new  InputStreamReader(System.in));
      String  name  =  "";
      String  mi  =  "";
      int  i  =  0;//判斷目前是第幾行
      boolean ji  =  true;//判斷是否重複執行
      boolean pan  =  false;//判斷資料是否正確
      ArrayList<String>  array_name =  new  ArrayList<>();//儲存使用者名稱
      ArrayList<String>  array_mi =  new  ArrayList<>();//儲存使用者密碼
      String  s  =  "";//取得data資料的字串

      while  ((s  =  data.readLine())  !=  null)  {
          System.out.println(i  +  ":    "  + s);
          if  (i  %  2  ==  0)  {//如果是偶數行,就把資料存到array_name裡面
             array_name.add(s);
          }  else  {//如果是基數行,就把資料存到array_mi裡面
             array_mi.add(s);
          }
          i++;
      }
      
      while  (ji)  {//重複執行的區塊

          System.out.print("\n輸入【姓名】:");
          name  =  brffer.readLine();
          System.out.print("輸入【密碼】:");
          mi  =  brffer.readLine();
          
          pan  =  false;//初始化
          
          for  (int  k  =  0;  k  <  array_mi.size();  k++)  {
             if  (name.equals(array_name.get(k))
                   &&  mi.equals(array_mi.get(k)))  {
                pan  =  true;
             }
          }


          if  (pan)  {
             System.out.println("----------------------比對結果=符合");
          }  else  {
             System.out.println("----------------------資料錯誤");
          }
          
          System.out.println("是否繼續?(Y/N");
          
          if(brffer.readLine().toUpperCase().equals("Y")==false){
             ji=false;
             System.out.println("程式已結束");
          }
          
          System.out.println("\n=======================");
          
          
      }
      
      
   }
   
   
}






截圖


送禮物贊助創作者 !
0
留言

創作回應

Kantai
BP
2013-12-11 15:52:11
深海異音
你已經沒巴幣了
2013-12-12 20:57:24
你媽沒幫你生屁眼
小0a
2021-06-08 07:35:44

更多創作