ERLEDIGT
JA
JA
ANTWORTEN
6
6
ZUGRIFFE
1106
1106
EMPFEHLEN
-
Hallo zusammen,
ich habe ein Problem mit ASP.NET und Zeilenumbrüchen.
Und zwar habe ich eine TextBox mit multiline=true und dort können die User nun etwas mehr Text - auch mit Zeilenumbrüchen - schreiben. Dieser Text wird dann als in einer Microsoft SQL oder MySQL Datenbank als gespeichert. Ich hatte das Problem schon mit MS SQL und benutze nun MySQL. Dort wird dieser String nun als TEXT gespeichert.
Wenn ich den Text nun ausgeben will, mache ich das so.
Und hier ist mein Problem (oder auch schon früher). Die Zeilenumbrüche verschwinden einfach.Code csharp:1
Label.Text=(string)DataReader.GetString(0);
Ich weiß nicht wo genau, ob schon beim speichern in der Datenbank oder beim abrufen aus dieser, die Zeilenumbrüche sind weg.
Oder sind Labels nicht "fähig" Zeilenumbrüche darzustellen?
Testweise hab ich einen Label den Text "Test\n Test" zugewiesen, aber auch hier war kein Zeilenumbruch.
Habt ihr ideen?
Viele Grüße,
Roland
PS: Ich würde den Text nur ungern erst in byte konvertieren und dann so in der Datenbank speichern, da mir das die gesamte Wartung erschwert!
-
Servus,
das liegt daran, dass der Browser Zeilenumbrüche im HTML-Code als Leerzeichen darstellt. (Schau mal in den vom Browser angezeigten Quellcode, da wird der Text sicherlich mit Zeilenumbruch geschrieben)
Da ein Label ein Server-Control ist, was vom IIS in ein span-tag umgewandelt wird, musst du in dem Label-Text die "\n"s in "<br />"s umwandelnund schon funktionierts.Code csharp:1
Label.Text = Label.Text.Replace("\n", "<br />")
Grüße, MartinGeändert von Harass (07.08.07 um 21:03 Uhr)
Grüße, Martin
----------------------------------------------------------------------------
Student of computational visualistics at University of Koblenz
-
Ok, das wäre super.
Und wenn mein User nun einen Zeilenumbruch macht, wird der dann auch direkt als \n gespeichert?
-
Ja wird er
Höchstwahrscheinlich sogar \n\r. Was aber kein weiteres Problem darstellen sollte.
Das kannst du auch ganz leicht per Debugger selbst rausfinden
Grüße Nico
----------------------
Xing
----------------------
Zitat von Mark Twain (1835-1910)
Zitat von Mike Wilson - Biographie über Larry Ellison (CEO Oracle)
-
Ok super, könnt ihr mir noch eine Frage beantworten?
Ich möchte eine Shoutbox einrichten, kann ich die Labels dazu mit einem Attribut versehen, dass diese überall gleich sind?
Oder muss ich meine Shoutboxeinträge wirklich erst in einer Datei o.ä. abspeichern und dann bei jedem PageLoad ereignis neu laden?
EDIT:
Achja, ihr meint es wird direkt ein "\n" erzeugt. Wieso konnte ich das nie in meiner MySQL Datenbank sehen? Dort war nie ein "\n" oder ähnliches nur Leerzeichen, wenn ich mich nicht irre...Geändert von Eroli (07.08.07 um 22:00 Uhr)
-
Bei dem ersten habe ich nicht die geringste Ahnung, was du meinen könntest, aber zu deiner zweiten Frage:
Was auch immer du benutzt um die Einträge in deiner SQL-Datenbank anzusehen (keine Ahnung, was es bei MySQL für Tools gibt), es wandelt das als Escape-Sequenz dargestellte Steuerzeichen "\n" in einen Zeilenumbruch um, genau wie der Browser. Nur dass der Browser eben (wie gesagt) Zeilenumbrüche im HTML-Quellcode in der Ausgabe als Leerzeichen interpretiert.Grüße, Martin
----------------------------------------------------------------------------
Student of computational visualistics at University of Koblenz
-
Ok es klappt wirklich, habe es gerade getestet.
Naja, das mit der SHoutbox werde ich wohl doch mit Datenbankanbindung machen. Danke Leute!
Ähnliche Themen
-
Zeilenumbrüche
Von son gohan im Forum CSSAntworten: 5Letzter Beitrag: 08.07.05, 22:14 -
Zeilenumbrüche
Von Kebb im Forum Flash PlattformAntworten: 1Letzter Beitrag: 12.06.05, 22:34 -
Zeilenumbrüche
Von philsturm im Forum PHPAntworten: 2Letzter Beitrag: 28.11.04, 13:54 -
XML - Zeilenumbrüche
Von Maa im Forum HTML & XHTMLAntworten: 1Letzter Beitrag: 27.02.04, 11:18 -
PHP Zeilenumbrüche
Von DiablO im Forum PHPAntworten: 10Letzter Beitrag: 23.08.01, 09:01





Zitieren

Login





