import java.util.*; import java.io.*; import fi.jyu.mit.ohj2.Mjonot; /** * Lukujen lukeminen tiedostosta Scanner-luokkaa käyttäen * @author Vesa Lappalainen * @version 1.0, 05.03.2007 */ public class Tied_ka_scanner { /** @param args ei käytössä */ public static void main(String[] args) { Scanner fi; try { // Avataan tiedosto lukemista varten // fi = new Scanner(new File("luvut.dat")); fi = new Scanner(new FileInputStream(new File("luvut.dat"))); // Jotta UTF8/ISO-8859 toimii } catch (FileNotFoundException ex) { System.out.println("Tiedosto ei aukea!"); return; } double summa=0; int n=0; try { String s; double luku; while ( fi.hasNext() ) { s = fi.next(); try { luku = Double.parseDouble(s); } catch (NumberFormatException ex) { continue; } summa += luku; n++; } } finally { fi.close(); } double ka = 0; if ( n > 0 ) ka = summa/n; System.out.println("Lukuja oli " + n + " kappaletta."); System.out.println("Niiden summa oli " + Mjonot.fmt(summa,4,2)); System.out.println("ja keskiarvo oli " + Mjonot.fmt(ka,4,2)); } }