gzipper: GZIP-Datei

Hi!

Wie erkennt man eine GZIP-Datei in Java?

lg gzipper

  1. Dumme aber interessante Frage, wie erkennt man sie sonst?
    Vielleicht am Header? Ich weiß nicht ob die einen haben.
    Oder an der Herkunft? In per HTTP übertragenen Daten steht ja drin was es ist.
    An der Dateiendung vielleicht?

  2. An deren Member-Header, der in jedem Fall am Anfang der Datei stehen muss, um eine valide gzip-Datei zu sein.

    Lese einfach die ersten 2 Bytes ein und vergleiche sie mit den Werten 0x1f 0x8b.

    Gruß, LX

    --
    RFC 1925, Satz 8: Es ist komplizierter als man denkt.
    1. Hi!

      Ich will die Datei öffnen und sie mit GZIPInputStream lesen falls sie eine GZIP-Datei ist, ansonsten mit einen BufferedReader.

      lg gzipper

      1. Tach,

        Ich will die Datei öffnen und sie mit GZIPInputStream lesen falls sie eine GZIP-Datei ist, ansonsten mit einen BufferedReader.

        ich würde davon ausgehen, dass der GZIPInputStream eine passende Exception wirft, falls das was du ihm übergibst nicht das ist, was er erwartet. Fang diese ab und handle dann entsprechend.

        mfg
        Woodfighter

        1. Hi!

          Hab nachgesehen: Es ist eine leider IOException und keine davon abgeleitete Klasse.
          Wenn ich diese Ausnahme abfange muss ich dann die Datei nocheinmal öffnen oder geht das mit einmal öffnen?

          lg tomgk

          1. Tach,

            Hab nachgesehen: Es ist eine leider IOException und keine davon abgeleitete Klasse.
            Wenn ich diese Ausnahme abfange muss ich dann die Datei nocheinmal öffnen oder geht das mit einmal öffnen?

            da du das nach den ersten paar Bytes wissen wirst, macht das nicht so den Unterschied aus.

            mfg
            Woodfighter