Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


&-tecken i XMLdokument

Postades av 2006-09-13 09:46:01 - Stefan Norinder, i forum c# (c-sharp), Tråden har 8 Kommentarer och lästs av 1877 personer

Om jag försöker göra

XmlDocument xml = new XmlDocument();
xml.LoadXml("<?xml version=\"1.0\" ?><test>&</test>");

kastar programmet ett XmlException.

Finns det något smidigt sätt att komma förbi det här problemet?


Svara

Sv: &-tecken i XMLdokument

Postades av 2006-09-13 09:48:49 - Jonas Lorander

& ska skrivas som &amp;

Testa det.


Svara

Sv:&-tecken i XMLdokument

Postades av 2006-09-13 10:29:31 - Stefan Norinder

Tack för svaret.

Jag löste det genom att göra

str = Regex.Replace(strName.Name, "&", "&amp;");
str = Regex.Replace(str, "<", "&lt;");
str = Regex.Replace(str, ">", "&gt;");
str = Regex.Replace(str, "\"", "&quot;");
str = Regex.Replace(str, "'", "&#39;");


Funderar bara på om detta är prestandanedsättande då man måste parsa varje sträng man ska lägg in i xmldokumentet. Hade hoppats på att man kunde ange någon doc-type eller nått som accepterade dessa tecken.


Svara

Sv: &-tecken i XMLdokument

Postades av 2006-09-13 10:36:16 - Ola Lindfeldt

Detta:
<test>&</test>
är per definition INTE XML,
så nej du kan inte på något sätt använda &-tecken på detta sätt i XML.
Du borde klaga på den som har gjort dokumentet från början.


Svara

Sv:&-tecken i XMLdokument

Postades av 2006-09-13 14:07:01 - Stefan Norinder

Nu är inte <test>&</test> den slutgiltiga lösningen utan bara ett sätt att enkelt beskriva problemet. Vad jag vill göra är att transformera data från en serversida via xslt och XmlHttp till ett GUI. Eftersom datan är från en datakälla kan jag inte styra vilka tecken som kommer att skickas.

Du får gärna utveckla och berätta vad som krävs för att det ska bli "ritkig" xml för det har jag inte koll på.


Svara

Sv: &-tecken i XMLdokument

Postades av 2006-09-13 15:13:07 - Ola Lindfeldt

Du löste ju det ovan genom att göra
str = Regex.Replace(str, "&", "&amp;");

Vad jag menar är att att du ska inte behöva Replace om det är XML,
eftersom "&" i ett XML-element *måste* skrivas som "&amp;"
(annars är det inte XML)

Men kan du inte styra det så måste du göra Replace på det här sättet.
Problemet är att om den på ett ställe är korrekt, alltså det står "&amp;"
så kommer du med din replace att få "&amp;amp;".


Svara

Sv: &-tecken i XMLdokument

Postades av 2006-09-13 21:07:15 - Andreas Hillqvist

<b>transformera data från en serversida</b>
Om det är text som ser ut som det du beskriver i första exemplet är det ett fel i servern. Det är som Ola Lindfeldt säger, servern retunerar inte XML.

Om det rör sig om html du vill transformer bör som sagt göra om det till giltlig XML först. HTML är inte XML.

Om du konstruerar xml data själv bör du använder XML-Document objektet för att hantera detta:

    XmlDocument doc = new XmlDocument();
    doc.InsertBefore(doc.CreateXmlDeclaration("1.0", "utf-8", null), doc.DocumentElement);

    XmlElement root = doc.CreateElement("test");
    XmlText text = doc.CreateTextNode("&><åÅäÄöÖ");
    root.AppendChild(text);

    doc.AppendChild(root);

    doc.Save("test.xml");

Ger:
<?xml version="1.0" encoding="utf-8" ?> 
<test>&><åÅäÄöÖ</test> 


På så sätt slipper du alla problem med special tecken och tecken kodning för svenska tecken. Allt bara fungerar.


Svara

Sv:&-tecken i XMLdokument

Postades av 2006-09-14 09:27:01 - Stefan Norinder

Ok. Tack för era svar. Nu förstår jag. Om man gör som ni skriver ordnas problemet med specialtecken automatiskt.


Svara

Sv: &-tecken i XMLdokument

Postades av 2006-09-14 22:07:35 - Andreas Hillqvist

Jepp.


Svara

Nyligen

  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo
  • 14:25 Tips på verktyg för att skapa QR-k
  • 14:23 Tips på verktyg för att skapa QR-k
  • 20:52 Fungerer innskuddsbonuser egentlig

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 170
27 953
271 705
676
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies