webForumDet fria alternativet

XML: "There is no Unicode byte order mark. Cannot switch to Unicode."

.NET

1 svar · 330 visningar · startad av Lukaspojken

Medlem sedan maj 20011 312 inlägg
Frågan#1

När jag försöker på ett enkelt sätt läsa en xmlfil så får jag detta fel: "There is no Unicode byte order mark. Cannot switch to Unicode." Någon som vet vad jag gör för fel?

Dim xmlReader As New System.Xml.XmlTextReader("C:\temp\xmltest.xml")

Dim strValues As String = ""
While xmlReader.Read() 'På den här raden smäller det
    xmlReader.MoveToContent()
    strValues &= xmlReader.Value
End While

xmlReader.Close()

Så här ser xml:en ut:

<?xml version="1.0" encoding="utf-16"?>
<Block>
  <message sender="Test" />
  <Data text="Test" />
</Block>
Medlem sedan maj 20011 312 inlägg
#2

En omsparning av xml-filen i unicode löste det :)

271 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
144 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
141 ms — ändringar (db)