logo

כיצד לקרוא קובץ שורה אחר שורה ב-Java

ישנן דרכים הבאות לקרוא קובץ שורה אחר שורה.

  • ClassReader Buffered
  • כיתת סורקים

שימוש ב-BufferedReader Class

שימוש במחלקת Java BufferedRedaer היא הדרך הנפוצה והפשוטה ביותר לקרוא קובץ שורה אחר שורה ב-Java. זה שייך ל java.io חֲבִילָה. מחלקה Java BufferedReader מספקת שיטת readLine() לקריאת קובץ שורה אחר שורה. החתימה של השיטה היא:

 public String readLine() throws IOException 

השיטה קוראת שורת טקסט. הוא מחזיר מחרוזת המכילה את תוכן השורה. השורה חייבת להסתיים על ידי כל אחד מהזנת שורה (' ') או החזרת עגלה (' ').

דוגמה לקריאת קובץ שורה אחר שורה באמצעות מחלקה BufferedReader

בדוגמה הבאה, Demo.txt נקרא על ידי מחלקה FileReader. שיטת readLine() של המחלקה BufferedReader קוראת קובץ שורה אחר שורה, וכל שורה מצורפת ל-StringBuffer, ואחריה הזנת שורה. התוכן של StringBuffer מופק לאחר מכן למסוף.

 import java.io.*; public class ReadLineByLineExample1 { public static void main(String args[]) { try { File file=new File('Demo.txt'); //creates a new file instance FileReader fr=new FileReader(file); //reads the file BufferedReader br=new BufferedReader(fr); //creates a buffering character input stream StringBuffer sb=new StringBuffer(); //constructs a string buffer with no characters String line; while((line=br.readLine())!=null) { sb.append(line); //appends line to string buffer sb.append('
'); //line feed } fr.close(); //closes the stream and release the resources System.out.println('Contents of File: '); System.out.println(sb.toString()); //returns a string that textually represents the object } catch(IOException e) { e.printStackTrace(); } } } 

תְפוּקָה:

כיצד לקרוא קובץ שורה אחר שורה ב-Java

שימוש בכיתה סורק

Java סוֹרֵק class מספקת יותר שיטות שירות בהשוואה למחלקה BufferedReader. מחלקת Java Scanner מספקת את שיטת nextLine() כדי להקל על שורה אחר שורה של תוכן הקובץ. שיטות nextLine() מחזירות את אותה String כמו שיטת readLine() . כיתת ה-Scanner יכולה גם לקרוא קובץ בצורת InputStream.

דוגמה לקריאת קובץ שורה אחר שורה באמצעות Scanner class

 import java.io.*; import java.util.Scanner; public class ReadLineByLineExample2 { public static void main(String args[]) { try { //the file to be opened for reading FileInputStream fis=new FileInputStream('Demo.txt'); Scanner sc=new Scanner(fis); //file to be scanned //returns true if there is another line to read while(sc.hasNextLine()) { System.out.println(sc.nextLine()); //returns the line that was skipped } sc.close(); //closes the scanner } catch(IOException e) { e.printStackTrace(); } } } 

תְפוּקָה:

כיצד לקרוא קובץ שורה אחר שורה ב-Java