Jak: Odczyt obiektu danych z pliku XML (C# i Visual Basic)
W tym przykładzie odczytuje dane obiektu, który został poprzednio zapisane do pliku XML, za pomocą XmlSerializer klasy.
Przykład
Poniższy przykład kodu jest też dostępny jako urywek kodu IntelliSense.W Próbniku urywek kodu znajduje się w XML.Aby uzyskać więcej informacji, zobacz Wstawki kodu programu.
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);
}
Kompilowanie kodu
Nazwa pliku "c:\IntroToVB.xml" należy zastąpić nazwą pliku zawierającego dane serializowane.Aby uzyskać więcej informacji na temat szeregowania danych, zobacz Jak: zapisu danych obiektu w pliku XML (C# i Visual Basic).
Klasa musi mieć publicznego konstruktora bez parametrów.
Rozszeregować tylko publiczne właściwości i pól.
Stabilne programowanie
Następujące warunki, może spowodować wyjątek:
Klasa, poddany serializacji ma publiczny konstruktor bez parametrów.
Dane w pliku nie reprezentują dane z klasy do rozszeregowania.
Plik nie istnieje (IOException).
Zabezpieczenia
Należy zawsze sprawdzać, nakładów i nigdy nie deserializacji danych z niezaufanego źródła.Obiekt utworzony ponownie uruchamia się na komputerze lokalnym z uprawnieniami kod, który rozszeregować go.Sprawdź, czy wszystkie dane wejściowe przed rozpoczęciem korzystania z danych w aplikacji.
Zobacz też
Zadania
Jak: zapisu danych obiektu w pliku XML (C# i Visual Basic)