我有一个像下面这样的xml。
<Manifest Type="File">
<FilesList>
<FileItem>
<Version>v1.0</Version>
打开exe时,如何获取值并覆盖标签? 顺便说一下,我需要使用&#34; StartupPath&#34;显示xml目录。
为了更简单,我希望它与这张图片完全一样,但是使用xml。 (只是一个随机图像) https://support.kaspersky.com/images/home_ksmac_8421_02_en13-145521.jpg
答案 0 :(得分:1)
您可以使用XML序列化来读取.NET中的XML文件
为XML文件模型创建一些类
Public Class Manifest
<System.Xml.Serialization.XmlElement>
Public Property FilesList As FilesList
<System.Xml.Serialization.XmlAttribute>
Public Property [Type] As String
End Class
Public Class FilesList
<System.Xml.Serialization.XmlElement>
Public Property FileItem As FileItem
End Class
Public Class FileItem
<System.Xml.Serialization.XmlElement>
Public Property Version As String
End Class
并像这样加载文件
Dim s As New Xml.Serialization.XmlSerializer(GetType(Manifest))
Dim m As Manifest
Using sr = New System.IO.StreamReader("XmlFile1.xml")
m = DirectCast(s.Deserialize(sr), Manifest)
End Using
Dim labelText = m.FilesList.FileItem.Version
注意:我在评论中询问了XML文件,你说这只是一个开头。所以上面的模型假设完整的文件看起来像这样
<?xml version="1.0" encoding="utf-8" ?>
<Manifest Type="File">
<FilesList>
<FileItem>
<Version>v1.0</Version>
</FileItem>
</FilesList>
</Manifest>
如果它不是你需要调整模型,即在不止一个(例如FileItem)时创建数组,并适当地访问它,以便m.FilesList.FileItem.Version
需要更改。