02. august 2000 - 20:05
Der er
9 kommentarer og 1 løsning
replace \"\\n\" -> \"<br>\" (CString)
Tjae efter adskillige timer på #c++ på IRC uden held prøver jeg lige her; Jeg har; CString strRes = \"altmuligt\\nnylinje\\nflere linjer\\n\\n\\n endnu flere\"; CString strRep = \"\"; hvordan får jeg så strRap til at indeholde det som strRes gør, hvor alle newlines (\\n) er udskiftet med <br>? Det skulle kunne gøres sådan her med CString::Replace strRep = strRes.Replace(\"\\n\",\"<br>\"); men CString::Replace ser ikke ud til at kunne klare \\n, den retunerer hvertfald bare garbage.
Annonceindlæg fra HP
02. august 2000 - 20:20
#1
skal du ikke skrive (dobbelt slash!) strRep = strRes.Replace(\"\\\\n\",\"<br>\");
02. august 2000 - 20:23
#2
for at finde newlines?, hmm tror det nu ikke, men vil da prøve
02. august 2000 - 20:26
#3
nej virker ikke
02. august 2000 - 20:26
#4
skal man ikke skrive \"\\\\\" når man menere \"\\\"? Jeg kan huske om man skal det i c++
02. august 2000 - 20:28
#5
Der mangler vist et \"ikke\"
02. august 2000 - 20:30
#6
\\n = ny linje det jeg vil er at finde alle *newlines* og skrive <br> istedet (\\\\n virkede ikke, den gav 1, som er helt i skoven)
02. august 2000 - 20:38
#7
det må gerne være i andet end CString format
02. august 2000 - 20:52
#8
nå så må jeg jo selv lave en funktion der gør det
02. august 2000 - 21:17
#9
nå løste det selv med <string>; string text = \"\\n df s\"; string word = \"\\n\"; string replacement = \"<br>\"; int start = text.find(word); while(start != string::npos) { text.replace(start, word.length(), replacement); start = text.find(word,start+replacement.length()); } strRes = text.c_str(); AfxMessageBox(strRes,MB_OK);
02. august 2000 - 21:19
#10
typisk ms at gøre noget halvfærdig man kan sku da ikke have en CString::Replace funktion når den ikke engang kan replace et skide \\n til <br>
Kurser inden for grundlæggende programmering