Открыть файл с сериализованным объектом, созданный в другом проекте - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Создаю структуру с возможностью сериализации и ее экземпляр:
Листинг программы
  1. <System.Serializable()> Public Structure STYLE
  2. Dim Name1 As String
  3. Dim Name2 As Single
  4. End Structure
  5. Public A1 As STYLE
Далее сохраняю этот экземпляр в файл:
Листинг программы
  1. Dim formatter As New Runtime.Serialization.Formatters.Binary.BinaryFormatter()
  2. Using stream As IO.Stream = IO.File.Open(FileName, IO.FileMode.Open)
  3. A1 = formatter.Deserialize(stream)
  4. End Using
Открываю его в этой сборке без проблем, но вот в другом проекте другое пространство имен и объект не десириализуется. Как добиться совместимости сериализованных объектов в одном приложении и другом?

Решение задачи: «Открыть файл с сериализованным объектом, созданный в другом проекте»

textual
Листинг программы
  1. Imports System.IO
  2. Imports System.Xml.Serialization
  3.  
  4. Public Class Form1
  5.     Dim Lst As New List(Of Test)
  6.  
  7.     Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  8.         Dim x As New XmlSerializer(Lst.GetType)
  9.         Dim objStreamReader As New StreamReader("C:\Test.xml")
  10.         Lst = x.Deserialize(objStreamReader)
  11.         objStreamReader.Close()
  12.  
  13.         MsgBox(Lst(1).S1)
  14.     End Sub
  15.  
  16.     Class Test
  17.         Public S1, S2 As String
  18.         Public I1 As Integer
  19.     End Class
  20. End Class

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 4.286 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы