AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Array of Bytes dynamisch erstellen

Ein Thema von Gandimann · begonnen am 30. Nov 2020 · letzter Beitrag vom 3. Dez 2020
 
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.154 Beiträge
 
Delphi 10.3 Rio
 
#8

AW: Array of Bytes dynamisch erstellen

  Alt 2. Dez 2020, 23:29
Hallo Mavarik,
ich möchte gern ein Binär Datei Blockweise ( z.B erster Block von 22ten Byte bis 200ten Byte und nächster Block zwichen 220 - 816ten Bytes usw..) splitten und in einen DB (Firebird) abspeichern und später je nach Bedarf die ausgewählte Blöcke wieder zusammen in eine Binär Datei schreiben. Die Start-und- Endbytes der Blöcke werden vorher aus Binär gerechnet
Alles habe ich bereits im Jahr 2001 in Visual Basic 6 und MDB Datenbank realisiert. Quellcode kann ich zur Verfügung stellen.

Delphi für mich relativ neu ist daher habe ich Probleme.....
OK...

Also abgesehen davon, dass ich das in einem Blobfeld dann speichern würde... Ich gehe davon aus, dass es sich bei den Bin-Daten um Strings handelt?
Also Du hast also fixe Start-Positionen und fixe Längen vorberechnet?
Nach dem Motto... Start 22 Len 188 Start 220 Länge x...

Also sagen wir mal Du hat einen Record:

Delphi-Quellcode:
Type
 Parts = Record
           Start : Integer;
           Len : Integer;
         end;

 PartsList : TArray<Parts>; // oder mit altem Delphi Array of Parts;


var
  MS : TMemoryStream;
  S : AnsiString;
  i : Integer;
begin
  FillPartsList(PartsList);

  MS := TMemoryStream.Create;
  try
    MS.LoadFromFile('Bindaten.Dat');

    for i:=0 to high(PartsList) do
      begin
        Setlength(S,PartList[i].Len);
        MS.Position := PartsList[i].Start;
        Move(MS.Memory^,S[1],PartList[i].Len);
        WriteToFirebird(S);
      end;

  finally
    MS.Free;
  end;
end.
So zum Beispiel...

Eine von unzähligen Möglichkeiten...

Mavarik
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:13 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