Szövegfájl (proba.txt) tartalmának beolvasása, az "a" és "e" betűk számának kiírása (BeolvasoSzamolo.java) import java.io.*; A java.io csomag importálása a be és kimeneti műveletekhez szükségesek. public class BeolvasoSzamolo{ public static int szamola (String s){ A szamola függvény megszámolja az a betűk számát és egészként visszadja azt. int i,ta=0; ta = a betűre vonatkozó találatok száma for (i=0; i<s.length();i++){ A ciklus addig megy, amíg a string végére nem érünk. A string osztály .length() függvénye számként visszaadja a string hosszát. if(s.charAt(i)=='a'){ Megvizsgáljuk, hogy a string i-edik karaktere a betű e. Ha igen, növeljük az a betűre vonatkozó találatok számát. ta++; } } return ta; Visszadajuk az a betűre vonatkozó találatszámot. } public static int szamole (String s){ A szamole függvény megszámolja az e betűk számát és egészként visszadja azt. int i,te=0; te = e betűre vonatkozó találatok száma for (i=0; i<s.length();i++){ if(s.charAt(i)=='e'){ Megvizsgáljuk, hogy a string i-edik karaktere e betű e. Ha igen, növeljük az e betűre vonatkozó találatok számát. te++; } } return te; Visszadajuk az e betűre vonatkozó találatszámot } public static void main (String[] args) throws Exception{ Az io műveleteknél kötelező a kivételkezelés. LineNumberReader f=new LineNumberReader( new InputStreamReader( new FileInputStream("proba.txt"))); Ahhoz, hogy sorokat olvassunk be, szükségünk van csatornák megnyitására. Jelen esetben létrehozunk egy f nevű LineNumberReader csatornát, beleágyazunk egy InputStreamReader-t, azaz bemeneti csatornát, amelybe egy FileInputStream-et, azaz fájl bemeneti csatornát ágyazunk be, amellyel a proba.txt-t érjük el. String s; s=f.readLine(); Az s nevű String típusú változóba beolvassuk az f (proba.txt) egy sorát. while(s!=null){ Amíg a beolvasott sor nem üres, addig él a ciklus. System.out.println(s); System.out.println("Az a betuk szama: "+szamola(s)); A kiírásba meghívjuk a szamola(s) függvényt, ami megszámolja a sorban lévő a betűket és egész számként visszaadja az értéket. System.out.println("Az e betuk szama: "+szamole(s)); s=f.readLine(); } f.close(); Lezárjuk a csatornát. } }