Einzelnen Beitrag anzeigen

DerSascha

Registriert seit: 14. Jan 2004
Ort: Niedersachsen
18 Beiträge
 
Delphi 7 Enterprise
 
#1

Binär statt Rückgriff auf Zeichenkodierungen!?

  Alt 3. Mai 2005, 11:43
Hallo,

ich habe folgendes Szenario:
Delphi-Quellcode:
TDatenpaket = packed record
  a:Byte;
  b:Int16;
  c:Int32;
  d:Boolean;
end;
Ich möchte nun den Inhalt eines Records diesen Typs übers Netz binär unter .NET senden.
Ich finde eine Reihe von Beispielen die auf Zeichenkodierungen und den damit zugänglichen
GetBytes()-, GetString()-Funktionen, usw. per Socket.Send() verschicken. Das ist für mein
Record meiner Meinung nach ungeeignet, weil nicht gewährleistet ist, dass die Bytes
unverändert bleiben.

Frage: Auf die Gefahr hin das diese blöd klingt, aber wie komme ich an die einzelnen Bytes
der Struktur ohne das Hilfskonstrukt der Stringfunktionen?

Meine derzeitige Lösung sieht so aus, dass ich die Strukturen als Serializable deklariere
und per BinaryFormatter und der Methode GetBytes einen MemoryStream benutze. Das
funktioniert, aber ich möchte das nicht dauerhaft über Serialisierung lösen. Das muß
doch einfacher gehen ... .

Gruß,
Sascha
  Mit Zitat antworten Zitat