Entwickler-Ecke
Basistechnologien - char[] in einen String umwandeln
ani - Fr 14.10.05 10:59
Titel: char[] in einen String umwandeln
huhu!
ich spiel hier grad ein bißchen rum....
ich möchte ein char[] in die textBox schreiben, gibts da keine methode die das machen kann? toString() funktioniert hier nicht.
muss ich dass dann so lösen oder gehts auch anders?
C#-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| char[] satz = new char[5]; satz[0] = 'h'; satz[1] = 'a'; satz[2] = 'l'; satz[3] = 'l'; satz[4] = 'o';
foreach(char zeichen in satz) { textBox1.Text = textBox1.Text+zeichen; } |
wenn sich einer fragt warum ich hallo nicht gleich in einem string speichere.
desshalb--> ich durchsuche die einzelnen zeichen nach übereinkunpft mit einem int-wert, wenn treffer dann soll er an die stelle ein anderes zeichen schreiben.
raziel - Fr 14.10.05 11:24
Hallo,
du kannst das über den string-Konstruktor lösen:
C#-Quelltext
1:
| string strSatz = new String( satz ); |
Gruß,
raziel
ani - Fr 14.10.05 11:36
aaaaa,
wusst ichs doch dass es da was einfacheres gibt.
danke dir :)
Robert_G - Fr 14.10.05 11:37
Titel: Re: char[] in einen String umwandeln
ani hat folgendes geschrieben: |
muss ich dass dann so lösen oder gehts auch anders? |
Moin ani,
klar gates anders. :P
Erstmal einen StringBuilder mit der gewünschten Größe anlegen[meta]Spart Kopiererei beim Vergrößern[/meta]:
StringBuilder sb = new StringBuilder(satz.Length);
Nun den char[] reinwerfen:
sb.Append(satz);
Oder die einzelnen Chars einzeln besetzen[meta]Der Indexer vom StrinBuilder macht deinen char array von Anfang an unnötig[/meta]:
C#-Quelltext
1: 2: 3: 4:
| for(int i = 0; i < satz.Length; i++) { sb[i] = satz[i]; } |
Das hier gehört zu den "bösen" Dingen in .Net, die man möglichst nie-nich machen sollte: :shock:
Zitat: |
C#-Quelltext 1: 2: 3: 4:
| foreach(char zeichen in satz) { textBox1.Text = textBox1.Text+zeichen; } | |
Mit jedem + gibt es einen
neuen String, dieser muss in der globalen Listen gefunden werden[meta]wenn nicht gefunden -> in die Liste, wenn gefunden -> die Instanz der Liste zurück[/meta].
Wer sowas macht glaubt auch an den Mythos ".Net ist langsam". ;)
ani - Fr 14.10.05 11:44
ich find das erste eleganter :P
aber trotzdem danke ;)
ps: ich wills auch nicht so machen :)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2024 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!