Lösung von Aufgabe 10

import java.io.*;

public class CountFile {

  public static void main(String[] args) {
    
    String eingabeDatei = args[0];

    int nZeichen = 0;
    int nWoerter = 0;
    int nZeilen  = 0;

    try {
      BufferedReader in  = new BufferedReader(new FileReader(eingabeDatei));
      int c;                // enthält gelesenes Zeichen oder -1
    
      while ((c = in.read()) != -1) {
        nZeichen++;
        if (c == ' ') {
          nWoerter++;
        } else if (c == '\n') {
          nZeilen++;
          nWoerter++;
        }
      }
      in.close();
    }
    catch(IOException e) {
      System.out.println("Fehler beim Kopieren:");
      e.printStackTrace(System.out);
    }

    nWoerter++;     // ein Wert mehr als Zwischenräume
    // nicht für nZeilen: nur ganze Zeilen mit Newline zählen mit

    System.out.println("Zahl der Zeichen: " + nZeichen);
    System.out.println("Zahl der Wörter:  " + nWoerter);
    System.out.println("Zahl der Zeilen: " + nZeilen);
  }
}