Entwickler-Ecke

C# - Die Sprache - Trim() will nicht?!?


stigge - Fr 10.08.07 14:22
Titel: Trim() will nicht?!?

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
private void button1_Click(object sender, EventArgs e)
        {
            string title = "Hallo                ";
            MessageBox.Show(Convert.ToString(title.Length));
            title.Trim();
            title.Trim(Convert.ToChar(" "));            
            MessageBox.Show(Convert.ToString(title.Length));
            MessageBox.Show(title);
        }

Weiß jemand wieso das nicht funktioniert?
Nach dem trimmen sieht der String gleich aus wie davor...

P.S.: Wie gehen die C#-Tags?

Moderiert von user profile iconUGrohne: Code- durch C#-Tags ersetzt


UGrohne - Fr 10.08.07 14:31

Du solltest das Ergebnis von Trim auch der Variablen zuweisen:

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
private void button1_Click(object sender, EventArgs e)
        {
            string title = "Hallo                ";
            MessageBox.Show(Convert.ToString(title.Length));
            title = title.Trim();        
            MessageBox.Show(Convert.ToString(title.Length));
            MessageBox.Show(title);
        }


JüTho - Fr 10.08.07 14:33

Hallo,

wer lesen kann, ist klar im Vorteil. In der SDK-Doku steht:
Zitat:
String.Trim-Methode ()
Rückgabewert
Ein neuer String, der dieser Instanz entspricht, nachdem Leerraumzeichen am Anfang und am Ende entfernt wurden.

Die Trim-Methode erzeugt also einen neuen String, und dieser muss verwendet werden, also z.B.:

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
private void button1_Click(object sender, EventArgs e)
        {
            string title = "Hallo                ";
            title = title.Trim();
            MessageBox.Show(title);
        }
}

Gruß Jürgen

Für die Formatierung: Oben auf "Bereiche" klicken, dann den passenden Text markieren, dann oben auf das Plus-Zeichen neben "C#" klicken.


stigge - Fr 10.08.07 14:34

user profile iconUGrohne hat folgendes geschrieben:
Du solltest das Ergebnis von Trim auch der Variablen zuweisen:

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
private void button1_Click(object sender, EventArgs e)
        {
            string title = "Hallo                ";
            MessageBox.Show(Convert.ToString(title.Length));
            title = title.Trim();        
            MessageBox.Show(Convert.ToString(title.Length));
            MessageBox.Show(title);
        }

:oops: Das ist natürlich logisch.
Hätte gedacht diese Funktion bearbeitet den String direkt :wink:
Danke!


Kha - Fr 10.08.07 17:24

Kann sie gar nicht, denn .Net-Strings sind unveränderbar ;) .


JüTho - Fr 10.08.07 17:25

user profile iconstigge hat folgendes geschrieben:
Hätte gedacht diese Funktion bearbeitet den String direkt :wink:
Danke!

Bitte beachte:

Ich hoffe, das hilft beim künftigen Verständnis. Jürgen

PS. Bitte beachte auch meinen Hinweis zur Formatierung; unsere obigen Posts hatten sich überschnitten.

@Khabarakh
[i]Was ist bloß heute mit mir los - alle meine Beiträge überschneiden sich mit anderen.