所以我在这里得到了我的 xml 文件。该文件名为 MyName.xml
<?xml version="1.0" encoding="utf-8"?>
<!--XML Database.-->
<Data>
<Person>
<Name>ggg</Name>
<Email>erty</Email>
<Tel>567890-</Tel>
</Person>
<Person>
<Name>hank</Name>
<Email>3456</Email>
<Tel>234567890-</Tel>
</Person>
</Data>
我不知道如何让这个函数读取这个 xml 文件。我觉得我快要做到这一点了。我从书中复制了代码,然后更改了一些部分。我只是不知道如何让它改变以供我使用。我对这里的一些东西也很困惑。我对此发表了评论。但我想知道我错过了什么以使错误不断弹出。
错误 - 未定义类型“人员”。(第 8、10、20 行)
同样对于任何拥有同一本书(murach 的 Visual Basic 2010)的人,我更改之前的原始代码位于第 713 页
书中的原始代码使用了一个包含 4 个条目的 xml 文件。每个都有 3 个部分,很像我的。
Imports System.Xml
Imports System.IO
Public Class Form2
Private Const path As String = "MyName.xml" 'it is in the bin folder.'
Public Shared Function GetPerson() As List(Of Person) 'what does this do? (Of Person) Am i missing something?'
Dim people As New List(Of Person) 'Here it is again. What do i do to fix this partpart'
Dim settings As New XmlReaderSettings
settings.IgnoreComments = True
settings.IgnoreWhitespace = True
Dim xmlIn As XmlReader = XmlReader.Create(path, settings)
If xmlIn.ReadToDescendant("Person") Then
Do
Dim person As New Person
person.Name = xmlIn("Name")
xmlIn.ReadStartElement("Person")
person.Email = xmlIn.ReadElementContentAsString
person.Tel = xmlIn.ReadElementContentAsString 'to make life simple for testing this, for now.'
people.Add(person)
Loop While xmlIn.ReadToNextSibling("Person")
End If
xmlIn.Close()
Return people
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
'I will end up puting code here to do something later. Just trying stuff right now.'
End Sub
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
End Sub
End Class
你能帮忙的话,我会很高兴。我知道有更好的方法,甚至可能更容易,但我需要通过我正在上的这门课。所以我得到的只是这段代码和一本非常大的书。稍后对于实际分配,我必须将其添加到 vb 中的数组中,然后搜索它并 bla bla bal.... 所以这只是我理解代码,所以我可以进入那部分。感谢所有可以帮助我的人。