C# -String beidseitig mit Leerzeichen füllen?

2 Antworten

Und wieso schaust du dann dafür nicht einfach in die Dokumentation?

Eine gleichverteilte Auffüllung erreichst du nur bei einer geraden Wortlänge. Daher gäbe es für mich folgende Lösungen:

  • Den String mittels Schleife abwechselnd auffüllen (ohne eine der oberen Funktionen, denn wahrscheinlich zu viel Aufwand)
  • Fehlende Anzahl an Zeichen durch 2 teilen, bei Nachkommastelle left = (int) ergebnis + 1, right = (int) ergebnis

Crysali 
Beitragsersteller
 03.12.2016, 13:01

Danke, PadRight und PadLeft scheint das zu sein. Ist halt schwer, danach zu suchen, wenn man nicht weiß, mit welchen Begriffen.

0

Wenn du es doch selbst schreiben kannst, dann tue es doch... 

Woher ich das weiß:Studium / Ausbildung – Informatikstudium

Crysali 
Beitragsersteller
 02.12.2016, 13:10

Danke, aber ich frage mich, ob es auch mit Vorhandenem geht. Ist ja unnötig, eine eigenen Funktion zu schreiben, wenn das schon irgendwie geht.

Falls die Frage zu ungenau oder unklar ist, reduziert möchte ich wissen, ob ich einen String beidseitg auffüllen kann, in einem Schritt, ohne selbst Funktionen schreiben zu müssen.

Sowas wie

static string Füllen(string s, char zeichen, int anzahl){
string tmp = "";
for(int i = 0; i < anzahl; ++i){
tmp += zeichen;
}
s = tmp + s + tmp;
return s;
}
0
triopasi  02.12.2016, 13:13
@Crysali

Vllt. ist deine Implementierung ja effizienter/besser als die andere.. wer weiß. Ich weiß, dass man links oder rechts auffüllen kann aber das weißt du ja auch.

0
Crysali 
Beitragsersteller
 02.12.2016, 13:20
@triopasi

Ich glaube selber nicht, dass eine bereits vorhandene Funktion das großartig anders macht, wäre aber in meinem Einzelfall besser, wenn es die Funktion bereits gäbe.

0