> New System.Xml.XmlDocument
> xmlDocument.Load(fileName)
> 'Получить корневой узел
> Dim rootElement As System.Xml.XmlElement
> rootElement = _
> CType(xmlDocument.ChildNodes(0), System.Xml.XmlElement)
> 'Убедиться в том, что корневой узел согласуется с ожидаемым текстом,
> 'ибо противное означает, что мы имеем дело с каким-то другим XML-файлом
> If (rootElement.Name <> XML_ROOT_TAG) Then
> Throw New Exception("Тип корневого узла не совпадает с ожидаемым!")
> End If
> '-----------------------------------------------------------
> 'Простой конечный автомат для итеративного обхода всех узлов
> '-----------------------------------------------------------
> Dim childOf_RootNode As System.Xml.XmlElement
> For Each childOf_RootNode In _
> rootElement.ChildNodes
> 'Если это узел UserInfo, то мы хотим просмотреть его содержимое
> If (childOf_RootNode.Name = XML_USERINFO_TAG) Then
> gotUserInfoData = True
> 'Пользовательские данные найдены
> '--------------------------------
> 'Загрузить каждый из подэлементов
> '--------------------------------
> Dim child_UserDataNode As System.Xml.XmlElement
> For Each child_UserDataNode In _
> childOf_RootNode.ChildNodes
> 'Идентификатор пользователя (UserID)
> If (child_UserDataNode.Name = XML_USERID_TAG) Then
> userId = CInt(child_UserDataNode.InnerText)
> 'ФИО пользователя (UserName)
> ElseIf (child_UserDataNode.Name = XML_NAMEINFO_TAG) Then
> Dim child_Name As System.Xml.XmlElement
> For Each child_Name In child_UserDataNode.ChildNodes
> 'Имя (FirstName)
> If (child_Name.Name = XML_FIRSTNAME_TAG) Then
> firstName = child_Name.InnerText
> 'Фамилия (LastName)
> ElseIf (chi1d_Name.Name = XML_LASTNAME_TAG) Then
> lastName = child_Name.InnerText
> End If
> Next 'Конец цикла разбора UserName
> End If 'Конец оператора if, осуществляющего проверку UserName
> Next 'Конец цикла разбора UserInfo
> End If 'Конец оператора if, осуществляющего проверку UserInfo
> Next 'Конец цикла разбора корневого узла
> If (gotUserInfoData = False) Then
> Throw New Exception("Данные пользователя в XML-документе не найдены!")
> End If
>End Sub
>'--------------------------------------------------------------------
>'Сохраняет пользовательское состояние
>' [in] fileName: Имя файла, используемого для сохранения данных
>' [in] userId: Идентификатор пользователя, который мы хотим сохранить
>' [in] firstName: Имя пользователя, которое мы хотим сохранить
>' [in] lastName: Фамилия пользователя, которую мы хотим сохранить
>'--------------------------------------------------------------------