简体   繁体   中英

vb.net dataset.load xml file containing string “&”

I'm using a Dataset.Load statement to load a XMl File and on the file I have some tags with the "&" character and this is causing a exception. Are there any way to Load the XML to the dataset or replacing the & for another string.

I tried to do a Replace but when I use StringVar.Replace("&","e") for example when I have "ç" or "ã" strings on the file this chars are replaced for an wrong sequence of chars.

I was trying this

My.Computer.FileSystem.WriteAllText(MyFilePath, My.Computer.FileSystem.ReadAllText(MyFilePath, System.Text.Encoding.UTF8).Replace(" & ", "&"), False, System.Text.Encoding.UTF8)

but it happens that some files has "A&B" or any other combination of letters before and after the "&"

I'll be glad if anyone can help-me. Thanks

`Hello Guys, I solved my problem. The problem was really @Blorgbeard sayd the Xml File was coming not valid.

Public Shared Function Decompress(text As String) As String Dim bytes As Byte() = Convert.FromBase64String(text)

    Using msi = New MemoryStream(bytes)
        Using mso = New MemoryStream()
            Using gs = New System.IO.Compression.GZipStream(msi, System.IO.Compression.CompressionMode.Decompress)
                Dim bytesAux As Byte() = New Byte(4095) {}
                Dim cnt As Integer

                While (InlineAssignHelper(cnt, gs.Read(bytesAux, 0, bytesAux.Length))) <> 0
                    mso.Write(bytesAux, 0, cnt)
                End While
            End Using
            Dim streamReader As StreamReader = New StreamReader(mso, System.Text.Encoding.UTF8, True)
            Dim XmlDoc As String
            mso.Seek(0, SeekOrigin.Begin)
            XmlDoc = streamReader.ReadToEnd               
            Return XmlDoc
        End Using
    End Using

End Function`

this is what I did to get and return the string containing the correct XML data to be write to file.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM