Formats de compression


Ici & #39 s un Programme qui permettra de déterminer la plupart des principaux Types d'archives.

Contributeur: SWAG ÉQUIPE de SUPPORT

{
> I & #39 m à la recherche Pour les descriptions des formats d'en-têtes dans
> tous les Fichiers d'archive, c'est à dire .ZIP, .ARC, .LZH, .ARJ, etc.
> je veux juste être capable de lire les en-têtes de tous ces
> les archives, pas nécessairement de les manipuler. Quelqu'un sait
> où peut-être?

Ici & #39 s un Programme qui permettra de déterminer la plupart des principaux Types d'archives.
I & #39 ai fait quelques ajouts, mais la source d'origine est à partir de
un message sur cette écho...l'auteur original & #39 s nom a depuis été
perdu. L'utilisation de la Procédure, il suffit d'appeler cela comme suit:
Si GetArcType(nom de fichier.Ext)=Zip puis....
}

Utilise
Dos

Type
ArcType = (FileError, Inconnu, Zip, Zoo, à l'Arc, Lzh, Pak, Arj)

la Fonction GetArcType(Pnom : String) : ArcType
Var
ArcFile : Fichier d'Octets
i : Integer
Gat : ArcType
c : Array[1..5] of Byte
begin
Assign(ArcFile, FName)
{$I-}
Reset(ArcFile)
{$I }
si IOResult <> 0 then
Gat := FileError
else
si la Taille du fichier(ArcFile) < 5
Gat := FileError
else
begin
For i := 1 to 5 do
Read(ArcFile, c[i])
Close(ArcFile)
if (c[1] = $50) et (c[2] = $4B))
Gat := Zip
else
if (c[1] = $60) et c[2] = $EA))
Gat := Arj
else
if (c[4] = $6c) et (c[5] = $68))
Gat := Lzh
else
if (c[1] = $5a) et (c[2] = $4f) et (c[3] = $4f))
Gat := Zoo
else
if (c[1] = $1a) et (c[2] = $08))
Gat := Arc
else
if (c[1] = $1a) et (c[2] = $0b))
Gat := Pak
else
Gat := Inconnu
fin

GetArcType := Gat
fin

Var
nom du fichier : String
de Retour : ArcType
{ArcType = (FileError,Inconnu,Zip,Zoo,à l'Arc,Lzh,Pak,Arj)}

begin
si ParamCount = 1
begin
FileName := ParamStr(1)
de Retour := GetArcType(nom de fichier)
en Cas de Retour de
ARJ : Writeln(nom de fichier, & #39 = ARJ & #39 )
PAK : Writeln(nom de fichier, & #39 = PAK & #39 )
LZH : Writeln(nom de fichier, & #39 = LZH & #39 )
ARC : Writeln(nom de fichier, & #39 = ARC & #39 )
ZOO : Writeln(nom de fichier, & #39 = ZOO & #39 )
ZIP : Writeln(nom de fichier, & #39 = ZIP & #39 )
INCONNU : Writeln(nom de fichier, & #39 = Inconnu! & #39 )
else
Writeln( & #39 Fichier introuvable & #39 )
fin
end {SI}
else
Writeln( & #39 Aucun paramètre & #39 )
à la fin.









Formats de compression


Formats de compression : Plusieurs milliers de conseils pour vous faciliter la vie.


Ici & #39 s un Programme qui permettra de determiner la plupart des principaux Types d'archives.

Contributeur: SWAG EQUIPE de SUPPORT

{
> I & #39 m a la recherche Pour les descriptions des formats d'en-tetes dans
> tous les Fichiers d'archive, c'est a dire .ZIP, .ARC, .LZH, .ARJ, etc.
> je veux juste etre capable de lire les en-tetes de tous ces
> les archives, pas necessairement de les manipuler. Quelqu'un sait
> ou peut-etre?

Ici & #39 s un Programme qui permettra de determiner la plupart des principaux Types d'archives.
I & #39 ai fait quelques ajouts, mais la source d'origine est a partir de
un message sur cette echo...l'auteur original & #39 s nom a depuis ete
perdu. L'utilisation de la Procedure, il suffit d'appeler cela comme suit:
Si GetArcType(nom de fichier.Ext)=Zip puis....
}

Utilise
Dos

Type
ArcType = (FileError, Inconnu, Zip, Zoo, a l'Arc, Lzh, Pak, Arj)

la Fonction GetArcType(Pnom : String) : ArcType
Var
ArcFile : Fichier d'Octets
i : Integer
Gat : ArcType
c : Array[1..5] of Byte
begin
Assign(ArcFile, FName)
{$I-}
Reset(ArcFile)
{$I }
si IOResult <> 0 then
Gat := FileError
else
si la Taille du fichier(ArcFile) < 5
Gat := FileError
else
begin
For i := 1 to 5 do
Read(ArcFile, c[i])
Close(ArcFile)
if (c[1] = $50) et (c[2] = $4B))
Gat := Zip
else
if (c[1] = $60) et c[2] = $EA))
Gat := Arj
else
if (c[4] = $6c) et (c[5] = $68))
Gat := Lzh
else
if (c[1] = $5a) et (c[2] = $4f) et (c[3] = $4f))
Gat := Zoo
else
if (c[1] = $1a) et (c[2] = $08))
Gat := Arc
else
if (c[1] = $1a) et (c[2] = $0b))
Gat := Pak
else
Gat := Inconnu
fin

GetArcType := Gat
fin

Var
nom du fichier : String
de Retour : ArcType
{ArcType = (FileError,Inconnu,Zip,Zoo,a l'Arc,Lzh,Pak,Arj)}

begin
si ParamCount = 1
begin
FileName := ParamStr(1)
de Retour := GetArcType(nom de fichier)
en Cas de Retour de
ARJ : Writeln(nom de fichier, & #39 = ARJ & #39 )
PAK : Writeln(nom de fichier, & #39 = PAK & #39 )
LZH : Writeln(nom de fichier, & #39 = LZH & #39 )
ARC : Writeln(nom de fichier, & #39 = ARC & #39 )
ZOO : Writeln(nom de fichier, & #39 = ZOO & #39 )
ZIP : Writeln(nom de fichier, & #39 = ZIP & #39 )
INCONNU : Writeln(nom de fichier, & #39 = Inconnu! & #39 )
else
Writeln( & #39 Fichier introuvable & #39 )
fin
end {SI}
else
Writeln( & #39 Aucun parametre & #39 )
a la fin.


Formats de compression

Formats de compression : Plusieurs milliers de conseils pour vous faciliter la vie.
Recommander aux amis
  • gplus
  • pinterest

Messages récents

Commentaire

Laisser un commentaire

évaluation