Hi, ich bekomme Daten vom Mikrocontroller über die Serielle Schnittstelle zum PC gesendet. DIe Daten schauen so aus: 45;32;31;56;98; Das sind Werte von 5 Sensoren. Nun möcht ich den String in C# aufsplitten, und zwar beim Zeichen ";". Wie funktioniert das? Das Microsoft Bsp hab ich mir zwar angesehen, aber damit geht es nicht.
Hast du vielleicht einen Beispiel Code? Ich schaff es zwar jetzt dass nur der letzte Werte ausgegeben wird, allerdings möcht ich die 5 Werte in 5 verschiedene Variablen speichern. ?
In C# heißt die Methode Split() und ist ein Member der Klasse System.String. In Deinem Fall könnte der Aufruf wie folgt aussehen:
1 | string data = "45;32;31;56;98;"; |
2 | string[] items = data.Split( new char[]{';'} ); |
3 | foreach ( string s in items ) |
4 | {
|
5 | // aufgrund des letzten ';' in data dürfte das letzte Element
|
6 | // in items leer sein...
|
7 | if ( ! string.IsNullOrEmpty(s) ) |
8 | {
|
9 | // Verarbeitung des Elements s
|
10 | }
|
11 | }
|
Grüße aus KA Markus
danke habe es jetzt so gemacht string data = MSComm1.ReadTo(value); //Werte aus Schnittstelle string[] substrings = Regex.Split(data, ";"); //regular Expression substring[0] --> wert1 substring[1] --> wert2 substring[2] --> wert3 ... es funktioniert danke nochmals
Hi, ich habe genau dasselbe Problem wie du, ich bekomme Daten über den UART die folgt aussehen: 70;11 möchte diese in 2 Strings teilen und zuweisen, also dann: code1=70; code2=11; bin aber leidder nicht ganz schlau geworden aus dem Beitrag, hat jemand denn noch ein Bespiel mit einer genaueren Kommentierung, möchte es halt verstehen und nicht einfach nur machen:-) Ein Beispiel mit meinen Werten wäre natürlich sehr hilfreich:-) danke im vorraus Matze
Drückt doch mal Hilfe im Visual Studio und sucht nach "split", viel besser kann man es kaum noch dokumentieren. Nur gucken muss man selber...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.