2009-08-14 9 views
0

Ich habe Bilder in meiner Datenbank gespeichert, beim Abrufen dieser Bilder möchte ich wissen, wie das Gewicht (20KB, 90KB, etc.) Pro Bild ist. Wie bekomme ich diese Informationen? Danke im Voraus.Wie erhält man das Gewicht für ein gespeichertes Bild in Delphi 2009?

+1

1. Welche Datenbank verwenden? 2. Was ist der Typ des Feldes? – RRUZ

+0

Entschuldigung, meine Datenbank ist MySQL und das Feld ist BLOB-Typ. Also, Aldos Antwort funktioniert gut. Danke an alle –

Antwort

1

Wenn es ein BLOB-Feld, dann können Sie die folgenden

SELECT OCTET_LENGTH(column) FROM table t; 

verwenden, aber es wäre wirklich schön, wenn wir Ihre dbms wissen

Edit: Sie auch folgenden Ansatz versuchen können (I won‘ t Versorgung Code da ich nicht delphi jetzt) ​​

aber die Idee ist:

Last das Bild in eine TMemoryStream erhalten dann die Größe mit TMemoryStream.Size

0

Delphi speichert Bilder in Datenbanken mit dem TGraphicField, das normalerweise Ihre Bilder in einen BMP-Blob-Stream konvertiert, bevor sie gespeichert werden.

Wenn Sie also Ihre Bilder in einer BMP-Datei speichern, sollten Sie einen guten Hinweis auf die Größe in Ihrer Datenbank geben.

Beachten Sie jedoch, dass einige Datenbanksysteme die zugrunde liegenden Blobs komprimieren können und einige TGraphic Plugins andere Bildformate liefern können.

So wie RRUZ bereits kommentiert: zu wissen, die Art von Datenbank-System und Bild hilft sehr.

--jeroen