![]() |
Prüfen, ob Datei ein PNG ist
Von Hador kommt folgende Funktion, um zu prüfen, ob eine angegebene Datei ein PNG-Bild ist:
Delphi-Quellcode:
function IsPNG(const AFileName: String): Boolean;
var FileHandle: Integer; Buffer: array[0..2] of Byte; begin FileHandle := FileOpen(AFileName, fmOpenRead); FileSeek(FileHandle, 1, 0); FileRead(FileHandle, Buffer, 3); FileClose(FileHandle); Result := (Buffer[0] = $50) and (Buffer[1] = $4E) and (Buffer[2] = $47); end; |
Re: Prüfen, ob Datei ein PNG ist
Zitat:
Delphi-Quellcode:
Achtung! Ich hab die Funktion nicht getestet, da ich grad kein PNG sowie Delphi zur Hand habe.
function IsPNG(const AFileName: String): Boolean;
var FileHandle: Integer; Buf: Int64; begin FileHandle := FileOpen(AFileName, fmOpenRead); FileSeek(FileHandle, 0, 0); FileRead(FileHandle, Buf, 8); FileClose(FileHandle); Result := (Buf = $0A1A0A0D474E5089); end; Sollte aber eigentlich funktionieren Die Wahrscheinlichkeit, dass die ersten 8 Byte zufällig identisch sind sind schon sehr gering. Und dazu kommt ja auch noch die Prüfung der Dateiendung. EDIT: Ich hatte doch noch 'n Feher drin. So funktioniert sie aber. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:39 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz