Avatar billede phoenix_2004 Nybegynder
03. januar 2006 - 22:28 Der er 17 kommentarer og
1 løsning

Stringbuilder replace

Jeg har følgende kode:

strBuilder = strBuilder.Replace("\n","<br/>");
lblnyheder.Text = strBuilder.ToString();

Henter noget ind fra en database (Access database) og skal have nogen linieskift sat ind. Men den kode virker bare ikke ??

Nogen der har en ide til hvorfor den ikke lige vil gøre det ???
Avatar billede erikjacobsen Ekspert
03. januar 2006 - 22:39 #1
Prøv enten

strBuilder = strBuilder.Replace("\\n","<br/>");

eller

strBuilder = strBuilder.Replace(@"\n","<br/>");
Avatar billede phoenix_2004 Nybegynder
03. januar 2006 - 22:46 #2
Har prøvet begge forslag uden resultat.
Avatar billede erikjacobsen Ekspert
03. januar 2006 - 22:53 #3
Er du sikker på der står en \n i feltet i databasen?
Avatar billede phoenix_2004 Nybegynder
03. januar 2006 - 22:56 #4
Nu når du spørger så er jeg lidt i tvivl !!

Det drejer sig om en Access database og min databasereader henter ALT i den kolonne og smider det over i stringbuilderen. SÅ er lidt i tvivl om der nå at komme et kinie skift ind imellem
Avatar billede erikjacobsen Ekspert
03. januar 2006 - 22:59 #5
Ok, men skal vi kigge på hvad der så står i din stringbuilder. Du kan bare skrive den ud og se på den i "vis kilde"

Og vi snakker om et linieskift, og ikke teksten \n (to tegn: \ og n ) - ikke?
Avatar billede phoenix_2004 Nybegynder
03. januar 2006 - 23:03 #6
Ja til et linieskift.

Stringbuilder indeholder en masse rækker med tekster og der skulle gerne blive sat en linie skift imellem dem, så de ikke står ud som en MEGA stor tekst.
Avatar billede erikjacobsen Ekspert
03. januar 2006 - 23:04 #7
"der skulle gerne blive sat "  ... må vi se ?
Avatar billede phoenix_2004 Nybegynder
03. januar 2006 - 23:06 #8
??
Avatar billede erikjacobsen Ekspert
03. januar 2006 - 23:08 #9
Må vi se koden der laver din stringbuilder. Du kunnne jo eventuelt sætte en <br> på når den laves, hvis jeg forstår dig ret.
Avatar billede phoenix_2004 Nybegynder
03. januar 2006 - 23:13 #10
Kode:

StringBuilder strBuilder = new StringBuilder();

strBuilder.Append(DBrd["MoText"]); ** Database smides ind i StrBuilder

strBuilder = strBuilder.Replace("\n","<br/>");
lblnyheder.Text = strBuilder.ToString();

Mer har jeg nu ikke af kode til string builderen..
Avatar billede erikjacobsen Ekspert
03. januar 2006 - 23:20 #11
Lad mig se om jeg forstår dig rigtige. Du henter fra eet felt og ikke flere felter i en while-løkke?
Hvis det er korrekt opfattet, så er det jo bare spørgsmålet om hvad der står i feltet "MoText" ?
Avatar billede phoenix_2004 Nybegynder
03. januar 2006 - 23:33 #12
Jeg har måtte lave koden en smule om, og ser således ud nu:

while(DBrd.Read())
{
    strBuilder.Append(DBrd["MoText"]);
    strBuilder.Append("\n");
}

strBuilder = strBuilder.Replace("\n","<br/><br/>");
lblnyheder.Text = strBuilder.ToString();


Den er den eneste mulighed for at der kommer en "linieskift" imellem teksterne. Men den sætter koden: <br/> ind som tekst og ikke som html kode ?
Avatar billede arne_v Ekspert
03. januar 2006 - 23:35 #13
kan man indsætte HTML tags i en Label ?
Avatar billede erikjacobsen Ekspert
03. januar 2006 - 23:40 #14
Ja, du kan sikkert nøjes med din \n  - så vil du se et linieskift.
Avatar billede phoenix_2004 Nybegynder
03. januar 2006 - 23:52 #15
Tak.. erikjacobsen. (et svar)
Avatar billede erikjacobsen Ekspert
03. januar 2006 - 23:54 #16
Jeg samler slet ikke på point, tak.
Avatar billede phoenix_2004 Nybegynder
04. januar 2006 - 13:56 #17
Jeg var lige hurtig til at afslutte den igår og den er endnu ikke helt løst. Fordi problemer er at det forgår i en label og den kan ikke lige finde ud af HTML tags, som Arne_V var inde på.

Med \n kan du se linieskift i kilde koden, men jeg kan ikke se det i en browser. Der ville jeg gerne have det også. Men hvordan ?????
Avatar billede phoenix_2004 Nybegynder
17. oktober 2006 - 18:57 #18
Lukker
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester