Mi colección Archivos XML Cómo: Leer datos de objetos de un archivo XML (C# y Visual Basic) Visual Studio 2015 En este ejemplo se leen datos de objetos escritos previamente en un archivo XML mediante la clase XmlSerializer. Este ejemplo de código también está disponible como 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 Fragmentos de código. C# public class Book { public String title; } public void ReadXML() { // First write something so that there is something to read ... var b = new Book { title = "Serialization Overview" }; var writer = new System.Xml.Serialization.XmlSerializer(typeof(Book)); var wfile = new System.IO.StreamWriter(@"c:\temp\SerializationOverview.xml"); writer.Serialize(wfile, b); wfile.Close(); // Now we can read the serialized book ... 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 = (Book)reader.Deserialize(file); file.Close(); 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. http://pabprod.blob.core.windows.net/books/7e4f690b-4325-4c73-af88-3601743555dd.html[06/02/2016 1:35:37 p. m.] Mi colección 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 de .NET Framework 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 StreamWriter Cómo: Escribir datos de objetos en un archivo XML (C# y Visual Basic) Serialización (C# y Visual Basic) Guía de programación de C# Guía de programación en Visual Basic © 2016 Microsoft Cómo: Escribir datos de objetos en un archivo XML (C# y Visual Basic) Visual Studio 2015 En este ejemplo se escribe el objeto de una clase en un archivo XML mediante la clase XmlSerializer. En este ejemplo de código se define una clase denominada Book, se crea una instancia de la clase y se utiliza la serialización XML para escribir la instancia en un archivo XML. Código parecido a éste está disponible como fragmentos de código de IntelliSense.En el Administrador de fragmentos de código, se encuentra en XML.Para obtener más información, vea Fragmentos de código. C# public class XMLWrite { static void Main(string[] args) { WriteXML(); http://pabprod.blob.core.windows.net/books/7e4f690b-4325-4c73-af88-3601743555dd.html[06/02/2016 1:35:37 p. m.] Mi colección } public class Book { public String title; } public static void WriteXML() { Book overview = new Book(); overview.title = "Serialization Overview"; System.Xml.Serialization.XmlSerializer writer = new System.Xml.Serialization.XmlSerializer(typeof(Book)); var path = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments) + "//SerializationOverview.xml"; System.IO.FileStream file = System.IO.File.Create(path); } } writer.Serialize(file, overview); file.Close(); Compilar el código La clase debe tener un constructor público sin parámetros. 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. El archivo ya existe y es de sólo lectura (IOException). La ruta de acceso es demasiado larga (PathTooLongException). El disco está lleno (IOException). Seguridad de .NET Framework En este ejemplo se crea un nuevo archivo, si es que aún no existe.Si una aplicación necesita crear un archivo, precisará acceso Create para la carpeta correspondiente.Sin embargo, si el archivo ya existe, la aplicación sólo precisará acceso Write, un privilegio menor.Por tanto, siempre que sea posible, resulta más seguro crear el archivo durante la implementación y conceder sólo acceso Read para un único archivo, en lugar de acceso Create para una carpeta. Vea también StreamWriter Cómo: Leer datos de objetos de un archivo XML (C# y Visual Basic) Serialización (C# y Visual Basic) Serialización (C# y Visual Basic) http://pabprod.blob.core.windows.net/books/7e4f690b-4325-4c73-af88-3601743555dd.html[06/02/2016 1:35:37 p. m.] Mi colección © 2016 Microsoft http://pabprod.blob.core.windows.net/books/7e4f690b-4325-4c73-af88-3601743555dd.html[06/02/2016 1:35:37 p. m.]