User Tools

Site Tools


linuxbog:java:java-io-ekstra-eksempler
Linux - Friheden til at programmere i Java: Version 0.7.20040516 - 2020-12-31
forrige Kapitel 15. Datastrømme og filhåndtering næste

15.6. Ekstra eksempler

Herunder læser vi en fil og udregner filens tjeksum og antallet af linjer i filen.

import java.io.*;
import java.util.zip.*;

public class UndersoegFil
{
  public static void main(String[] args) throws IOException
  {
    FileInputStream //fil = new FileInputStream("skrevet fil.txt")// ;
    BufferedInputStream //bstrøm = new BufferedInputStream(fil)// ;
    CRC32 tjeksum = new CRC32();
    CheckedInputStream //chkstrøm = new CheckedInputStream(bstrøm,tjeksum)// ;
    InputStreamReader //txtstrøm  = new InputStreamReader(chkstrøm)// ;
    LineNumberReader //ind        = new LineNumberReader(txtstrøm)// ;

    String linje;
    while ((linje= //ind.readLine()// )!= null) System.out.println("Læst: "+linje);

    System.out.println("Antal linjer: "  + //ind.getLineNumber()// );
    System.out.println("Checksum (CRC):" + //tjeksum.getValue()// );
  }
}

Resultatet bliver

Læst: person0 k 43
Læst: person1 k 10
Læst: person2 k 16
Læst: person3 k 11
Læst: person4 k 21
Antal linjer: 5
Checksum (CRC):3543848051

Læg mærke til, hvordan vi hægter datastrøm-objekterne sammen i en kæde ved hele tiden at bruge det forrige objekt i som parameter til konstruktørerne: Filindlæsning, buffering, tjeksum, gå fra binær til tekstbaseret indlæsning (InputStreamReader) og linjetælling.

While-løkken er skrevet meget kompakt med en tildeling (linje=ind.readLine()) og derefter en sammenligning, om værdien af tildelingen var null ( (..) != null).


forrige hjem næste
Appendiks op Opgaver
linuxbog/java/java-io-ekstra-eksempler.txt · Last modified: by 127.0.0.1

Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution-Share Alike 4.0 International
CC Attribution-Share Alike 4.0 International Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki

Brug af AI : Al tekst kán være uddrag af AI genereret tekst og kan være fejlbehæftet.
AI kan lave fejl og det kan mennesker også, men al tekst er gennemgået af et menneske for fejl, og personlig bias kan være tilføjet.