package tiedosto; 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 TiedKaScanner { /** * Testataan tiedoston lukemista scannerilla * @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("2 4 5"); // fi.useDelimiter("\n"); } catch (FileNotFoundException ex) { System.out.println("Tiedosto ei aukea!"); return; } double summa=0; int n=0; try { String s; double luku; while ( fi.hasNextLine() ) { s = fi.nextLine(); if ( s.startsWith("#") ) continue; 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)); } }