Postupy: Zápis dat objektů do souboru XML (C# a Visual Basic)
Tento příklad zapíše objekt ze třídy do souboru XML pomocí třídy XmlSerializer.
Příklad
Tento příklad kódu například definuje třídu pojmenovanou Book, vytvoří instanci třídy a instance zápisu do souboru XML pomocí serializace XML.
Podobný kód je také dostupný jako fragment kódu IntelliSense.Ve Správci fragmentů kódu je umístěn v XML.Další informace naleznete v tématu Fragmenty kódu.
Public Module XMLWrite
Sub Main()
WriteXML()
End Sub
Public Class Book
Public Title As String
End Class
Public Sub WriteXML()
Dim overview As New Book
overview.Title = "Serialization Overview"
Dim writer As New System.Xml.Serialization.XmlSerializer(GetType(Book))
Dim file As New System.IO.StreamWriter(
"c:\temp\SerializationOverview.xml")
writer.Serialize(file, overview)
file.Close()
End Sub
End Module
public class XMLWrite
{
static void Main(string[] args)
{
WriteXML();
}
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();
}
}
Probíhá kompilace kódu
Třída musí mít veřejný konstruktor bez parametrů.
Robustní programování
Následující podmínky mohou způsobit výjimku:
Serializovaná třída nemá veřejný konstruktor bez parametrů.
Soubor existuje a je jen pro čtení (IOException).
Cesta je příliš dlouhá (PathTooLongException).
Disk je plný.(IOException)
Zabezpečení
Tento příklad vytvoří nový soubor, pokud soubor již neexistuje.Pokud aplikace potřebuje vytvořit soubor, pak tato aplikace potřebuje oprávnění Create pro složku.Pokud soubor již existuje, aplikace potřebuje pouze přístup Write a menší oprávnění.Pokud je to možné, je bezpečnější vytvořit soubor při zavádění aplikace a udělit pouze oprávnění Read pro jediný soubor, něž udělit oprávnění Create pro složku.
Viz také
Úkoly
Postupy: Čtení dat objektů ze souboru XML (C# and Visual Basic)