Чтение онлайн

на главную - закладки

Жанры

Программирование мобильных устройств на платформе .NET Compact Framework

Салмре Иво

Шрифт:

End Sub 'Конец функции

End Class 'Конец класса

Листинг 10.2. Вызов кода, предназначенного для сохранения и загрузки XML-документа

Private Sub Button1_Click(ByVal sender As System.Object, _

 ByVal e As System.EventArgs) Handles Button1.Click

 Const FILENAME As String = "TestFileName.XML"

 'Сохранить, используя XML DOM

 SaveAndLoadXML_UseDOM.XML_SaveUserInfo(FILENAME, 14, "Ivo", _

"Salmre")

 'Сохранить, используя объект однонаправленной записи XMLWriter

 'SaveAndLoadXML_UseReaderWriter.XML_SaveUserInfo(FILENAME, _

 ' 18, "Ivo", "Salmre")

 Dim userID As Integer

 Dim firstName As String

 Dim lastName As String

 'Загрузить, используя XML DOM

 SaveAndLoadXML_UseDOM.XML_LoadUserInfo(FILENAME, userID, _

firstName, lastName)

 'Загрузить, используя объект однонаправленного чтения XMLReader

 'SaveAndLoadXML_UseReaderWriter.XML_LoadUserInfo(FILENAME, _

 ' userID, firstName, lastName)

 MsgBox("Готово! " + _

userID.ToString + ", " + lastName + ", " + firstName)

End Sub

Листинг 10.3. Использование однонаправленного чтения/записи XML-данных для загрузки XML-документа из файла и его сохранения

Option Strict On

Option Compare Binary

Imports System

Public Class SaveAndLoadXML UseReaderWriter

'XML-дескрипторы, которые мы будем использовать в своем документе

Const XML_ROOT_TAG As String = "AllMyData"

Const XML_USERINFO_TAG As String = "UserInfo"

Const XML_USERID_TAG As String = "UserID"

Const XML_NAMEINFO_TAG As String = "Name"

Const XML_FIRSTNAME_TAG As String = "FirstName"

Const XML_LASTNAME TAG As String = "LastName"

'Набор состояний, отслеживаемых по мере чтения данных

Private Enum ReadLocation

 inAllMyData

 inUserInfo

 inUserID

 inName

 inFirstName

 inLastName

End Enum

'--------------------------------------------------------------------

'Сохраняет пользовательское состояние

' [in] fileName: Имя файла, используемого для сохранения данных

' [in] userId: Идентификатор пользователя, который мы хотим сохранить

' [in] firstName: Имя пользователя, которое мы хотим сохранить

' [in] lastName: Фамилия пользователя, которую мы хотим сохранить

'--------------------------------------------------------------------

Public Shared Sub XML_SaveUserInfo(ByVal fileName As String, _

 ByVal userId As Integer, ByVal firstName As String, _

 ByVal lastName As String)

 Dim xmlTextWriter As System.Xml.XmlTextWriter

 xmlTextWriter = New System.Xml.XmlTextWriter(fileName, _

System.Text.Encoding.Default)

 'Записать содержимое документа!

 '<Root>

 xmlTextWriter.WriteStartElement(XML_ROOT_TAG)

 '<Root>

 xmlTextWriter.WriteStartElement(XML_USERINFO_TAG)

 '<Root><UserID>

 '<Root><UserInfo>

 xmlTextWriter.WriteStartElement(XML_NAMEINFO_TAG)

 '<Root><UserInfo><Name>

 xmlTextWriter.WriteStartElement(XML_FIRSTNAME_TAG)

 '<Root><UserInfo><Name><FirstName>

 xmlTextWriter.WriteString(firstName) 'Запись значения

 xmlTextWriter.WriteEndElement 'Закрыть дескриптор имени

 '<Root><UserInfo><Name>

 xmlTextWriter.WriteStartElement(XML_LASTNAME_TAG)

 '<Root><UserInfo><Name><LastName>

 xmlTextWriter.WriteString(lastName) 'Запись значения

 xmlTextWriter.WriteEndElement 'Закрыть дескриптор фамилии

 '<Root><UserInfo><Name>

 xmlTextWriter.WriteEndElement 'Закрыть дескриптор ФИО

 '<Root><UserInfo>

 '<Root><UserInfo>

 xmlTextWriter.WriteStartElement(XML_USERID_TAG)

 '<Root><UserInfo><UserID>

 'Запись значения

 xmlTextWriter.WriteString(userId.ToString)

 xmlTextWriter.WriteEndElement 'Закрыть дескриптор UserID

Поделиться:
Популярные книги

Авиатор: назад в СССР

Дорин Михаил
1. Авиатор
Фантастика:
попаданцы
альтернативная история
5.25
рейтинг книги
Авиатор: назад в СССР

Неудержимый. Книга XXXVII

Боярский Андрей
37. Неудержимый
Фантастика:
аниме
фэнтези
фантастика: прочее
попаданцы
5.00
рейтинг книги
Неудержимый. Книга XXXVII

Библия

Библия
Религия и эзотерика:
религия
7.41
рейтинг книги
Библия

Мой муж – чудовище! Изгнанная жена дракона

Терин Рем
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Мой муж – чудовище! Изгнанная жена дракона

Иной. Том 3. Родственные связи

Amazerak
3. Иной в голове
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Иной. Том 3. Родственные связи

Диверсант

Вайс Александр
2. Фронтир
Фантастика:
боевая фантастика
космическая фантастика
5.00
рейтинг книги
Диверсант

Эммануэль

Арсан Эммануэль
1. Эммануэль
Любовные романы:
эро литература
7.38
рейтинг книги
Эммануэль

Хроники Тириса. Книга 1

Маханенко Василий Михайлович
1. Хроники Тириса
Фантастика:
боевая фантастика
космическая фантастика
фантастика: прочее
6.00
рейтинг книги
Хроники Тириса. Книга 1

По осколкам твоего сердца

Джейн Анна
2. Хулиган и новенькая
Любовные романы:
современные любовные романы
5.56
рейтинг книги
По осколкам твоего сердца

Гезат

Чернобровкин Александр Васильевич
22. Вечный капитан
Фантастика:
альтернативная история
5.25
рейтинг книги
Гезат

Изыскатель

Назимов Константин Геннадьевич
5. Травник
Фантастика:
фэнтези
7.00
рейтинг книги
Изыскатель

Я до сих пор не князь. Книга XVI

Дрейк Сириус
16. Дорогой барон!
Фантастика:
юмористическое фэнтези
попаданцы
аниме
5.00
рейтинг книги
Я до сих пор не князь. Книга XVI

На границе империй. Том 9. Часть 5

INDIGO
18. Фортуна дама переменчивая
Фантастика:
космическая фантастика
попаданцы
5.00
рейтинг книги
На границе империй. Том 9. Часть 5

Кодекс Охотника. Книга XXXV

Винокуров Юрий
35. Кодекс Охотника
Фантастика:
аниме
фэнтези
попаданцы
5.00
рейтинг книги
Кодекс Охотника. Книга XXXV