arckép

Neuwirth István

programtervező informatikus MSc – ELTE

Computational and Software Techniques MSc – Cranfield, UK

Elérhetőség
pitta2@gmail.com
+36 30 329 3039

Valid XHTML 1.0 Transitional

Valid CSS!

3. óra (2010.09.25.)

Felhasználói input

A programunk bemenetére több forrásból származhat információ: korábbi órákon a main függvény args paramétertömbjének felhasználásával módosítottuk a programunk futását.
A konzolról a System.in objektum segítségével olvashatunk, ez azonban magában nehézkesen kezelhető, a read metódusa csak egyetlen karaktert olvas; sorvége jelet rendszerfüggően olvassa (Linux alatt '\n' karakter, Windows alatt "\r\n" karakterek).
Célszerű valamilyen osztály segítségével a System.in InputStreamről olvasni, erre lehet megfelelő a Scanner osztály használata (java.util package).

Scanner scanner1 = new Scanner(System.in); // standard inputról olvas
Scanner scanner2 = new Scanner("x y z"); // az átadott String példányról próbál olvasni
Scanner scanner3 = new Scanner(new File("c:\\...")); // fájlból olvas

A fájlhoz olvasásnál a File osztály java.io packaget szükséges importálnunk. Az IO műveletek jellemzően dobhatnak kivételeket, a kivételekről részletesebben a későbbiekben tanulunk, addig is az érintett metódusokat egy-egy throws klózzal lássuk el:

public static void main(String[] args) throws Exception {
    ...
	metodus(...);
	...
}

private static void metodus(...) throws Exception {
    ...
}

A Scanner osztály next[...] metódusaival olvashatjuk le a következő, adott típusú elemet, illetve a megfelelő hasNext[...] metódusokkal előre lekérdezhetjük, hogy ezt megtehetjük-e.

Feladatok

Vissza