vb.net反序列化一个xml字符串

时间:2013-05-09 15:37:33

标签: xml vb.net deserialization xml-deserialization

我有一个简单的xml字符串,如下所示:

<?xml version="1.0"?>
<AccountBalance>
    <value>
        22.00
    </value>
</AccountBalance>

我想将<value>的值设置为vb.net中的变量。我该怎么做?

2 个答案:

答案 0 :(得分:1)

不确定序列化在哪里发挥作用,但如果它只是一个简单的XML字符串,您可以使用LINQ to XML轻松获取值:

Dim xml As XElement = New XElement.Parse(xmlString)

Dim Balance As Integer = From x in xml.Descendants("value")
                         Select CInt(x.Value)

这将为您提供XML中的值元素的集合。如果你只有一个,你也可以这样做:

Dim Balance As Integer = (From x in xml.Descendants(xmlString)
                         Select  CInt(x.Value)).SingleOrDefault()

xmlString是您希望从中获取值的XML字符串 - Parse方法从提供的字符串加载xml。如果它在文件中,请使用.Load

语法可能有点偏离 - 我正在做这件事。

答案 1 :(得分:0)

您是如何尝试将XML作为Stream,TextReader或XmlReader传递的? 请参阅此XmlSerializer.Deserialize Method