Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Delphi [игнор отключен] [закрыт для гостей] / как определить что в блоб поле текст или картинка / 6 сообщений из 6, страница 1 из 1
17.08.2003, 09:55
    #32238367
cloner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как определить что в блоб поле текст или картинка
как определить что в блоб поле текст или картинка
...
Рейтинг: 0 / 0
17.08.2003, 14:48
    #32238415
anubis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как определить что в блоб поле текст или картинка
Как и для файлов: по сигнатурам. Читаешь несколько первых байт BLOBа и сверяешь с сигнатурой изображения. Для BMPшек, например, это:
$42 $4D $36 $0C
...
Рейтинг: 0 / 0
17.08.2003, 17:19
    #32238435
cloner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как определить что в блоб поле текст или картинка
я чайник, где можно прочесть по подробнее, как прочитать сингатуру
...
Рейтинг: 0 / 0
17.08.2003, 18:58
    #32238452
anubis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как определить что в блоб поле текст или картинка
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
function TForm1.IsBMPInBLOB(BlobField: TBlobField): Boolean;
var
  BlobStream: TStream;
  SignatureBuffer: BITMAPFILEHEADER;
begin
  Result := False;
  if Assigned(BlobField) then
  begin
    BlobStream := BlobField.DataSet.CreateBlobStream(BlobField, bmRead);
    BlobStream.Seek( 0 ,  0 );
    if Assigned(BlobStream) then
    begin
      try
        BlobStream.Read(SignatureBuffer, SizeOf(SignatureBuffer));
        Result := (SignatureBuffer.bfType = $4D42) and
          (SignatureBuffer.bfSize = BlobStream.Size);
      finally
        BlobStream.Free;
      end;//try
    end;//if
  end;//if
end;
...
Рейтинг: 0 / 0
17.08.2003, 19:06
    #32238453
anubis
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как определить что в блоб поле текст или картинка
PS: только не пытайся использовать это с TGraphicField - там первые 8 байт в BLOBе - описатель типа рисунка, а дальше идет сама графика. Хотя с другой стороны если TGraphicField - то явно это рисунок, а не текст :), тут определять тип данных не надо.
...
Рейтинг: 0 / 0
18.08.2003, 09:36
    #32238584
cloner
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
как определить что в блоб поле текст или картинка
огромное спасибо, щаз пойду попробую
...
Рейтинг: 0 / 0
Форумы / Delphi [игнор отключен] [закрыт для гостей] / как определить что в блоб поле текст или картинка / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]