Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.12.23;
Скачать: CL | DM;

Вниз

Как прочитать Blob и разобрать побайтно   Найти похожие ветки 

 
Lnstr ©   (2002-12-04 17:31) [0]

Дело было в INTERBASE.
Надо взять Блоб и побайтно его раздерибанитью
По совету друзей, Применяю метод GetData(P) , где P - динамический массив, и - полный отлуп. Валит нули и 17 через равные интервалы.
Ниже приведена моя непутевщина.
Помогите, пожалуйста, только про коды ДНК не напоминайте.

with PL.BlobFieldName do begin
blsize:=BlobSize;
SetLength(P, blsize);
try
if not GetData(P) then begin
MessageDlg(DisplayName + " is NULL", mtInformation, [mbOK], 0);
end else begin
Memo1.Lines.Add("BlobSiseList "+IntToStr(blsize));
for i:=0 to 15 do begin
Memo1.Lines.Add("L"+IntToStr(i)+" "+IntToStr(P[i]));
end;
end;
finally
SetLength(P, 0);
end;
end;


 
OlegE ©   (2002-12-04 17:40) [1]

procedure TfrmMain.Button1Click(Sender: TObject);
var
a: array[1..64] of byte;
b: TStream;
i: Integer;
s: String;
begin
b := pFIBDataSet1.Createblobstream(pFIBDataSet1FD, bmRead);
b.Read( a, b.Size);
s:="";
for i := 1 to b.Size do s := s + IntToStr(a[i]);
ShowMessage(s);
b.Free;
pFIBDataSet1.Transaction.CommitRetaining;
end;


 
Lnstr ©   (2002-12-05 11:18) [2]

//Спасибо, OlegE.
// У меня получилось вот примерно так

// Если написать такую функцию
function ReadString(var Strm:TIBBlobStream):string;
var s:string;
b:byte;
begin Strm.Read(b,sizeOf(b));
SetLength(s,b);
Strm.Read(s[1],b);
result:=s;
end;

// то можно применить ее и похожие вот так

var Stream: TIBBlobStream;
//.......
TStream(Stream):=DM_PL.IBT_PL.CreateBlobStream(DM_PL.IBT_PLLIST, bmRead);
//....
with Stream do begin
Memo1.Lines.Add(ReadString(Stream));
Memo1.Lines.Add(ReadString(Stream));
//........
Free;
end;
//......



Страницы: 1 вся ветка

Текущий архив: 2002.12.23;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.017 c
1-74837
Groove_
2002-12-12 10:45
2002.12.23
tcp/ip


1-74796
Cherepovets
2002-12-11 12:12
2002.12.23
FDD


1-74814
Nord-Ost
2002-12-11 16:22
2002.12.23
Существует ли возможность раскраски строк...


3-74558
Dr. Well
2002-12-04 12:26
2002.12.23
QReport. Не срабатывает Preview.


1-74679
KMI
2002-12-12 13:13
2002.12.23
Разбивка листа Excel на страницы