Porady: wpisywanie danych o obiektach do pliku XML (C# i Visual Basic)
Ten przykład przepisuje obiekt z klasy do pliku XML wykorzystując klasę XmlSerializer.
Przykład
Ten przykładowy kod definiuje klasę nazwaną Book, tworzy wystąpienie klasy i używa serializacji XML, aby zapisać wystąpienie w pliku XML.
Kod podobny do tego jest dostępny jako fragment kodu IntelliSense.W menedżerze fragmentu kodu znajduje się w XML.Aby uzyskać więcej informacji, zobacz Wstawki kodu.
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();
}
}
Kompilowanie kodu
Klasa musi mieć publicznego konstruktora bez parametrów.
Stabilne programowanie
Następujące warunki mogą spowodować wyjątek:
Klasa jest serializowana w trybie opóźnienia nie ma publicznego konstruktora bez parametrów.
Plik istnieje i jest tylko do odczytu (IOException).
Wprowadzona ścieżka jest za długa (PathTooLongException).
Dysk jest pełny (IOException).
Zabezpieczenia
Ten przykład tworzy nowy plik, jeżeli plik jeszcze nie istnieje.Jeśli aplikacja musi utworzyć plik, ta aplikacja musi mieć dostęp Create do folderu.Jeśli plik już istnieje, aplikacja potrzebuje tylko dostępu Write, mniejsze uprawnienia.Jeżeli jest to możliwe, bezpieczniej jest tworzyć plik podczas wdrożenia i udzielić dostępu Read do pojedynczego pliku, a nie dostępu Create do folderu.
Zobacz też
Zadania
Porady: odczytywanie danych o obiektach z pliku XML (C# i Visual Basic)