VBNet.Su - Visual Basic .NET. ASP .NET. Framework .NET.
Новости
26.12.2008 Лимитный инвайт для тех, кто хочет присоединиться к VBNet.Su, но не может :)
vbnet-super
С наступающим!
join

18.12.2008 Увеличен размер поля для подписи. Разрешено использовать некоторые теги HTML.
Изменены правила форума, в подписи разрешено использовать партнерские ссылки. Ссылки в подписи могут использовать только те пользователи, которые разместили обратную ссылку на VBNet.Su на одном из сайтов, указанных в профиле. Проверка обратных ссылок производится в автоматическом режиме. Если у Вас возникнут какие-либо вопросы, обращайтесь к администратору.

15.12.2008 Открылась рассылка VBNet.Su!
Рассылка будет выходить автоматически, несколько раз в неделю. В рассылке будут содержаться последние обновления сайта (аналог RSS). Чтобы подписаться на рассылку VBNet.Su, перейдите по этой ссылке.
Архив новостей
Будь в теме
Внешние HDD на VBNet.Su
VBNet.Su рекомендуетWD 250 Gb, внешний жесткий диск, Intense Blue USB (WDMEB2500TE)
Внешний жесткий диск Western Digital My Passport Essential.
Этим привлекательным накопителем не грех похвалиться перед знакомыми: он имеет роскошный корпус из приятного на ощупь материала, который удобно держать в руке. Добавьте к этому ... подробнее..
Цена: 2790 руб. КУПИТЬ
Партнеры
Kbyte.Ru OZON.ru
Счетчики
Рассылка 'Visual Basic .NET - новости, коды, статьи, форум'
Статьи / XML /

Использование XML.Serialization

Автор: Алексей Немиро | добавлено: 07 декабря 2008 / 19:25 | просмотров: 3592 (+3230)
В данном обзоре речь пойдет об использование XML.Serialization в .NET и ее применении на примере сохранения и считывания настроек программы с использованием синтаксиса языка Visual Basic .NET.

System.XML.Serialization


Пространство имен System.XML.Serialization содержит классы, которые позволяют преобразовывать объекты в формат XML и обратно.
В данном обзоре будет рассмотрен только один класс сериализации – XmlSerializer.

Пожалуй, начнем


Как я уже ранее говорил, в данном обзоре будет рассмотрении пример использования сериализации для сохранения и считывания настроек программы. Для начала, нужно создать программу, далеко ходить не будем и создадим обычное Windows приложение, на форме разместим 2 текстовых поля, для примера этого более чем достаточно. Далее, нужно создать класс, который будет представлять настройки нашего приложения, и содержать значения двух наших текстовых полей. Назовем его Config:

Config.vb
Imports System.Xml.Serialization
Public Class Config
  Public text1 As String = ""
  Public text2 As String = ""
End Class

Теперь нужно создать новый экземпляр класса в нашей форме, и написать код для считывания и записи настроек. Считывать настройки мы будем в событие формы Load, а записывать в Disposed. Также нужно чтобы при изменении текста в текстовых полях, данные обновлялись в нашем объекте Config, фиксировать изменения мы будем в событие TextChanged текстовых полей.

Form.vb
'экземпляр класса настроек программы
Dim myConfig As New Config
'путь к файлу настроек
Dim myConfigFileName As String = Application.StartupPath & "config.xml"
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged
  myConfig.text1 = TextBox1.Text
End Sub
Private Sub TextBox2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox2.TextChanged
  myConfig.text2 = TextBox2.Text
End Sub
Private Sub Form1_Disposed(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Disposed
  'сохраняем текущие настройки
  Dim mySerializer As New XmlSerializer(GetType(Config))
  Dim myWriter As New IO.StreamWriter(myConfigFileName)
  mySerializer.Serialize(myWriter, myConfig)
  myWriter.Close()
End Sub
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
  'загрузка настроек, если есть
  Dim FI As New IO.FileInfo(myConfigFileName)
  If FI.Exists Then 'если файл существует, читаем его
    Dim mySerializer As New XmlSerializer(GetType(Config))
    Dim myReader As New IO.StreamReader(myConfigFileName)
    myConfig = mySerializer.Deserialize(myReader)
    myReader.Close()
  End If
  'применяем настройки
  TextBox1.Text = myConfig.text1
  TextBox2.Text = myConfig.text2
End Sub

Вот собственно и все, будут вопросы, пишите, а лучше задавайте их на форуме http://vbnet.su/forum.
Смотрите также
Visual Basic .NET 2005 (Framework 2.0) Работа с XML средствами Visual Basic .NET
Автор: Алексей Немиро | добавлено: 07 декабря 2008 / 19:28 | просмотров: 9721 (+9142)
Статья на тему работы с XML-файлами средствами Visual Basic .NET.
У нас есть
Мозолистые пальцы
Всего:1220
С ногами:2440
Красные глаза
Всего:244
Левых:122
Правых:122
Горячие мозги
Всего:122
Левых:3
Правых:27
Еще какие-то:92
Сегодня сказали
Сегодня еще никто ничего не говорил :-(
Архив сказанного ранее
Букварь всему голова
Книги на VBNet.SuСамоучитель Visual Basic 6.0
В книге доступно и подробно описано применение всех новых и унаследованных от предыдущих версий средств популярного языка программирования Visual Basic 6.0, облегчающих и значительно ускоряющих процесс разработки готовых приложений: простые ... подробнее..
Автор: А. Ананьев, А. Федоров
Цена: 285 руб. КУПИТЬ
Все книги на VBNet.Su
TOP 10 пользователей
Алексей Немиро65.2275660625+
Ігор47.181654625+
kibernetics16.0390645+
Kolyasik5.9658263125+
rublenko3.734375+
Arseny3.6845703125+
Skywalker2.904296875+
ostgals2.857421875+
5acredphoenix2.708994375+
andrey_z5z2.3857511875+
Все пользователи


Реклама: