Witam,
Pisze program do sterowania robotem za pomocą raspberry pi. Połączenie jest za pomocą TCP/IP. Napotkałem mały problem z wyświetlaniem danych.
Dane pobierane są prawidłowo, ale w WPF powstają krzaczki. W form wyświetlane są ok. Najlepiej widać to na screenach
Jestem jeszcze raczkujący w C#. Każda wskazówka będzie mile widziana jak usunąć krzaczki w WPF.
- Rejestracja:ponad 8 lat
- Ostatnio:ponad 5 lat
- Postów:14
- Rejestracja:ponad 8 lat
- Ostatnio:ponad 5 lat
- Postów:14
Zostają właśnie jakieś śmieci. W jaki sposób mogę wydobyć ,,czystą" wartość? Najlepiej gdybym mógł zapisać tą wartość do float ;)
screen z watch :https://www.dropbox.com/s/023mjftqitw951w/watch.JPG?dl=0
kod: http://pastebin.com/yxJrhRzZ
- Rejestracja:ponad 16 lat
- Ostatnio:ponad 5 lat
Tam są zera (0) czyli terminatory stringa. Po napotkaniu pierwszego string powinen się zakończyć. Pokaż w watch kolejne komórki stringa czy tam w jednej komórce jest zero (null-terminate) czyli \0, czy może to dwa znaki ? Niemniej po konwersji nie powinno tam być tych zer, generalnie nullterminate nie powinno być widoczne - pokaż te komórki w tym stringu. Btw http://stackoverflow.com/questions/3387733/how-to-remove-0-from-a-string-in-c
- Rejestracja:ponad 8 lat
- Ostatnio:ponad 5 lat
- Postów:14
Teraz działa świetnie :). Wystarczyło dodać
var str = returndata2.Replace("\0", "");
- Rejestracja:ponad 11 lat
- Ostatnio:około 21 godzin
- Postów:419
otrzymujesz bytesReceived bajtów i tylko one powinny być przekonwertowane na stringa
int bytesReceived = serverStream2.Read(inStream, 0, inStream.Length);
string returndata2 = Encoding.UTF8.GetString(inStream, 0, bytesReceived);
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.
lukas_gablukas_gab