Cómo: Leer datos de objetos de un archivo XML (C# y Visual Basic)
En este ejemplo se leen datos de objetos escritos previamente en un archivo XML mediante la clase XmlSerializer.
Ejemplo
Este ejemplo de código también está disponible en el fragmento de código de IntelliSense. En el selector de fragmentos de código, se encuentra en XML. Para obtener más información, vea Cómo: Insertar fragmentos 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);
}
Compilar el código
Sustituya el nombre de archivo "c:\IntroToVB.xml" por el nombre del archivo que contenga los datos serializados. Para obtener más información sobre datos de serialización, consulte Cómo: Escribir datos de objetos en un archivo XML (C# y Visual Basic).
La clase debe tener un constructor público sin parámetros.
Sólo se deserializan propiedades y campos públicos.
Programación eficaz
Las condiciones siguientes pueden provocar una excepción:
La clase que se va a serializar no tiene un constructor público sin parámetros.
Los datos del archivo no representan datos de la clase que se va a deserializar.
El archivo no existe (IOException).
Seguridad
Compruebe siempre las entradas y nunca deserialice datos procedentes de un origen que no sea de confianza. El objeto recreado se ejecuta en un equipo local con los permisos del código que lo deserializó. Compruebe todas las entradas antes de utilizar los datos en la aplicación.
Vea también
Tareas
Cómo: Escribir datos de objetos en un archivo XML (C# y Visual Basic)