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 Trechos de código.

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 para 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 para um arquivo XML (C# e Visual Basic)

Referência

StreamWriter

Conceitos

Guia de programação do C#

Outros recursos

Serialização (C# e Visual Basic)

Guia de programação de Visual Basic