Compartilhar via


Como: Ler dados de objeto de um arquivo XML (C# e Visual Basic)

Este exemplo lê Objeto dados que foram previamente gravados em um arquivo XML usando a classe XmlSerializer.

Exemplo

Este exemplo de código também está disponível como um trecho de código IntelliSense. No seletor de trecho de código, ele está localizado em XML . Para obter mais informações, consulte Como: Inserir trechos de código de IntelliSense.

Public Class Book
    Public Title As String
End Class

Public Sub ReadXML()
    Dim reader As New System.Xml.Serialization.XmlSerializer(GetType(Book))
    Dim file As New System.IO.StreamReader(
        "c:\temp\SerializationOverview.xml")
    Dim overview As Book
    overview = CType(reader.Deserialize(file), Book)
    Console.WriteLine(overview.Title)
End Sub
    public class Book
    {
        public String title;
    }       

public void ReadXML()
{
    System.Xml.Serialization.XmlSerializer reader = 
        new System.Xml.Serialization.XmlSerializer(typeof(Book));
    System.IO.StreamReader file = new System.IO.StreamReader(
        @"c:\temp\SerializationOverview.xml");
    Book overview = new Book();
    overview = (Book)reader.Deserialize(file);

    Console.WriteLine(overview.title);

}

Compilando o código

Substitua o nome de arquivo "c:\IntroToVB.XML" com o nome do arquivo que contém os dados serializados. Para obter mais informações sobre como publicar série de dados, consulte Como: Gravar dados de objeto em um arquivo XML (C# e Visual Basic).

A classe deve ter um construtor público sem parâmetros.

Apenas propriedades públicas e campos estão desserializados.

Programação robusta

As seguintes condições podem causar uma exceção:

  • A classe seja serializada não tem um construtor público, sem-parâmetros.

  • Os dados no arquivo não representam dados da classe a ser desserializado.

  • O arquivo não existe (IOException).

Segurança

Sempre verifique se as entradas e nunca desserializar dados de uma fonte não confiável. O objeto recriado é executado em um computador local com as permissões do código que desserializado-lo. Verifique todas as entradas antes de usar os dados no seu aplicativo.

Consulte também

Tarefas

Como: Gravar dados de objeto em um arquivo XML (C# e Visual Basic)

Referência

StreamWriter

Conceitos

Guia de Programação C#

Outros recursos

Serialização (C# e Visual Basic)

Guia de programação Visual Basic