Registriert seit: 11. Aug 2012
Ort: Essen
1.604 Beiträge
Delphi 10.2 Tokyo Professional
|
AW: wie art der daten in blob erkennen?
31. Aug 2023, 18:56
ich war so frei mal Deinen Code durch ChatGPT "verbessern" zu lassen, ging in nur zwei Steps:
Delphi-Quellcode:
function GetBytesFormat(const AData: TBytes): Integer;
begin
Result := -1;
if Length(AData) < 8 then Exit;
case AData[0] of
$FF: if CompareMem(@AData[0], @[$FF, $D8, $FF], 3) then Result := 0; // JPEG
$89: if CompareMem(@AData[0], @[$89, $50, $4E, $47, $0D, $0A, $1A, $0A], 8) then Result := 1; // PNG
$47: if CompareMem(@AData[0], @[$47, $49, $46, $38], 4) then Result := 2; // GIF
$42: if CompareMem(@AData[0], @[$42, $4D], 2) then Result := 3; // BMP
$00: if CompareMem(@AData[0], @[$00, $00, $01, $00], 4) then Result := 4; // ICO
$49, $4D:
if CompareMem(@AData[0], @[$49, $49, $2A, $00], 4) or
CompareMem(@AData[0], @[$4D, $4D, $00, $2A], 4) then Result := 5; // TIF/TIFF
end;
end;
Das Ergebnis finde ich gar nicht so verkehrt, obwohl es ja nur ein von einem Text-Parser stammt
Naja, lesbar ist aber anders. Und ob es dabei wirklich auf die paar Millisekunden ankommt, die diese "Verbesserung" bringt, wage ich mal zu bezweifeln.
Thomas Mueller
|