Laden...

byte array mit string vergleichen

Erstellt von mayer.sascha vor 11 Jahren Letzter Beitrag vor 11 Jahren 822 Views
M
mayer.sascha Themenstarter:in
1 Beiträge seit 2013
vor 11 Jahren
byte array mit string vergleichen

Hallo,

habe eine Client-Server Programm mit Hilfe von verschiedenen Beispielprogrammen geschrieben.
Die Verbindung steht und Daten kann ich von Client auch zum Server senden.

Client = Windows Forms application
Server = Konsolen application

Nun folgendes Problem:

Habe beim Client einen Button (Start) erstellt. Dieser sendet durch klicken dem Server "Start" als String welches vom Server in ein Byte-Array (data) gespeichert wird.
Kann dieses Byte Array nach umwandeln in ein String auch auf der Server-Konsole ausgeben.

Nun will ich im Server aber anstatt auszugeben vergleichen: if (data == "Start") ......

Da man nun aber Byte nicht mit String vergleichen kann habe ich unzählige Dinge schon probiert. Habe die Variable data (Byte-Array) in ein String konvertiert und dann versucht über String.Compare zu vergleichen, ohne erfolg. Habe auch versucht den String "Start" in ein Byte-Array zu konvertieren um dann die beiden Bytes zu vergleichen, leider auch ohne Erfolg.

Meine Vermutung ist nun dass es beim konvertieren zu Datenverlusten kommt und somit die Strings oder Bytes nicht mehr die gleichen sind und deswegen ein vergleich nie mit true endet.

Liege ich mit meiner Vermutung richtig und wenn ja gibt es eventuelle Lösungen die funktionieren könnten?

Über eine Antwort würde ich mich seh freuen.

MfG

Z
403 Beiträge seit 2007
vor 11 Jahren

Hallo mayer.sascha,

ich muss dir leider sagen das dies absolute Grundlagen sind.

[Hinweis] Wie poste ich richtig? 1.1. und 1.1.1

Stichwörter sind hier Encoding.Default.GetBytes und GetString

Ansonsten will ich jetzt garnicht weiter darauf eingehen, das dein Gesamtkonzept noch überarbeitungswürdig ist.

André

185 Beiträge seit 2005
vor 11 Jahren

Hallo,

Meine Vermutung ist nun dass es beim konvertieren zu Datenverlusten kommt und somit die Strings oder Bytes nicht mehr die gleichen sind und deswegen ein vergleich nie mit true endet.

MfG

Das ist doch wohl eindeutig ein Fall für den Debugger.