\r\n i mine strings?

Tags:    c#

Jeg indlæser en XML fil ved hjælp af filestream / XmlDocument.

I XML filen står der f.eks.:

<Medarbejdersti>
c:\medarbejdere\
</Medarbejdersti>


Når jeg debugger efter indlæsningen står der nu:

\r\nc:\\medarbejdere\\\r\n

Kan jeg få XML readeren til at droppe dem automatisk? Eller er jeg nødt til at manipulere dem væk fra strengen efter indlæsning, med f.eks. TrimEnd() og TrimStart()?







Jeg indlæser en XML fil ved hjælp af filestream / XmlDocument.

I XML filen står der f.eks.:

<Medarbejdersti>
c:\medarbejdere\
</Medarbejdersti>


Når jeg debugger efter indlæsningen står der nu:

\r\nc:\\medarbejdere\\\r\n

Kan jeg få XML readeren til at droppe dem automatisk? Eller er jeg nødt til at manipulere dem væk fra strengen efter indlæsning, med f.eks. TrimEnd() og TrimStart()?


Mon ikke det er denne property du skal bruge: http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.preservewhitespace(v=VS.100).aspx

Du bør dog nok teste hvor meget whitespace den fjerner, men ifølge linket så fjerner den ikke "significant whitespaces" ved dog ikke hvad det indebær.

Btw, er det en god ting at kigge i documentationen før man spørger. Jeg har næsten aldrig skrevet en eneste linje kode i C#, men alligevel fandt jeg dette bare ved at finde XmlDocument i msdn documentationen. Spørgsmål som "findes x funktion" kan let besvares på den måde.



Indlæg senest redigeret d. 09.05.2010 12:57 af Bruger #13669
Tak for svaret. preservewhitespace = true fjerner rigtigt nok \r\n karakterene, så tak for det. Der er stadig en blank før og efter værdien, men dem fjerner jeg så med TrimEnd og TrimStart (som efter en test også ville have fjernet \r\n).

Jeg søger også alt hvad jeg kan i dokumentationen. Men hvis man ikke ved at man skal søge efter ordet whitespace, er det lidt svært ;)





Tak for svaret. preservewhitespace = true fjerner rigtigt nok \r\n karakterene, så tak for det. Der er stadig en blank før og efter værdien, men dem fjerner jeg så med TrimEnd og TrimStart (som efter en test også ville have fjernet \r\n).

Jeg søger også alt hvad jeg kan i dokumentationen. Men hvis man ikke ved at man skal søge efter ordet whitespace, er det lidt svært ;)

Vidste det også kun fordi jeg har læst den her blog post, meget interesant btw(både denne post, men også selve bloggen): http://www.codinghorror.com/blog/2010/01/the-great-newline-schism.html



Indlæg senest redigeret d. 10.05.2010 20:28 af Bruger #13669
hvis du plukker ned i xml med xpath, så kig på normalize-space(Medarbejdersti/text())

Måske er det her også en mulgihed:

http://msdn.microsoft.com/en-us/library/system.xml.xmldocument.preservewhitespace%28v=VS.100%29.aspx

/J



Indlæg senest redigeret d. 11.05.2010 17:55 af Bruger #5789
Jeg tror du indlæser "forkert", jeg har aldrig oplevet det. Har du løst det, ellers så prøv lige at vis koden du loader dokumentet med, og koden hvor du udvælger din sti med...



Jeg ville anvende LinQ. Det er noget nemmere til behandling af XML og arrays.

Med Venlig Hilsen
Janus S. Andersen



Jeg tror du indlæser "forkert", jeg har aldrig oplevet det. Har du løst det, ellers så prøv lige at vis koden du loader dokumentet med, og koden hvor du udvælger din sti med...


Jeg har fået det løst, ved at bruge metoden trim() på mine indlæsninger. Så nu virker det fint. Ellers mange tak for hjælpen.



t