Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
bir XmlDocumentöğesini yükleyip kaydettiğinizde, kaydedilen belge aşağıdaki yollarla özgün belgeden farklı olabilir:
PreserveWhitespace yöntemi çağrılmadan önce
trueözelliği olarak Save ayarlanırsa, belgedeki boşluk çıktıda korunur; bu özellik isefalseXmlDocument, çıktıyı otomatik olarak girintiler.Öznitelikler arasındaki tüm beyaz boşluklar, tek bir boşluk karakterine düşürülür.
Öğeler arasındaki beyaz boşluk değiştirildi. Önemli boşluklar korunur ve önemsiz boşluk korunmaz. Ancak belge kaydedildiğinde, çıkışı düzgün bir şekilde yazdırarak daha okunabilir hale getirmek için varsayılan olarak Girintileme modunu kullanır.XmlTextWriter
Öznitelik değerleri çevresinde kullanılan tırnak karakteri varsayılan olarak çift tırnak olarak değiştirilir. Çift veya tek tırnak karakterini ayarlamak için XmlTextWriter üzerinde QuoteChar özelliğini kullanabilirsiniz.
Varsayılan olarak, gibi
{sayısal karakter varlıkları genişletilir.Giriş belgesinde bulunan bayt sırası işareti korunmaz. Farklı bir kodlama belirten bir XML bildirimi açıkça oluşturmadığınız sürece UCS-2 UTF-8 olarak kaydedilir.
Eğer XmlDocument öğesini bir dosyaya veya akışa yazmak istiyorsanız, yazılan çıktı belgenin içeriğiyle aynıdır. Yani, XmlDeclaration yalnızca belgede bir tane varsa yazılır ve belgeyi yazarken kullanılan kodlama, bildirim düğümünde verilen kodlamayla aynıdır.
Bir XmlDeclaration Yazma
XmlDocument ve XmlDeclaration üyeleri ile OuterXml, InnerXml ve WriteTo üyelerinin yanı sıra XmlDocument yöntemleri ve Save ve WriteContentTo yöntemleri bir XML bildirimi oluşturur.
XmlDocument ve OuterXml ve InnerXml özellikleri ile Save, WriteTo, ve WriteContentTo yöntemleri için, XML bildiriminde yazılan kodlama XmlDeclaration düğümünden alınır. XmlDeclaration düğümü yoksa, XmlDeclaration yazılmaz. XmlDeclaration düğümünde kodlama yoksa, kodlama XML bildiriminde yazılmaz.
XmlDocument.Save ve XmlDocument.Save yöntemleri her zaman bir XmlDeclarationyazar. Bu yöntemler, kodlamayı yazmakta olduğu yazardan alır. Başka bir ifadeyle, yazıcıda kodlama değeri, belgedeki ve XmlDeclaration içindeki kodlamayı aşar. Örneğin, aşağıdaki kod çıktı dosyasında out.xmlbulunan XML bildiriminde bir kodlama yazmaz.
Dim doc As New XmlDocument()
Dim tw As XmlTextWriter = New XmlTextWriter("out.xml", Nothing)
doc.Load("text.xml")
doc.Save(tw)
XmlDocument doc = new XmlDocument();
XmlTextWriter tw = new XmlTextWriter("out.xml", null);
doc.Load("text.xml");
doc.Save(tw);
Save yöntemi için XML bildirimi, sınıfındaki WriteStartDocumentXmlWriter yöntemi kullanılarak yazılır. Bu nedenle, WriteStartDocument metodunun üzerine yazmak, belgenin başlangıcının nasıl yazıldığını değiştirir.
XmlDeclaration, OuterXml ve WriteTo üyelerinin Encoding özelliği ayarlanmamışsa, herhangi bir kodlama yazılmaz. Diğer durumda, XML bildiriminde yazılan kodlama, Encoding özelliğinde bulunan kodlama ile aynıdır.
OuterXml Özelliğini Kullanarak Belge İçeriği Yazma
OuterXml özelliği, World Wide Web Consortium (W3C) XML Belge Nesne Modeli (DOM) standartlarının Microsoft uzantısıdır. OuterXml özelliği, xml belgesinin tamamının veya tek bir düğümün ve alt düğümlerinin işaretlemesini almak için kullanılır. OuterXml verilen düğümü ve tüm alt düğümlerini temsil eden işaretlemeyi döndürür.
Aşağıdaki kod örneğinde, bir belgenin tamamen dize olarak nasıl kaydedildiği gösterilmektedir.
Dim mydoc As New XmlDocument()
' Perform application needs here, like mydoc.Load("myfile");
' Now save the entire document to a string variable called "xml".
Dim xml As String = mydoc.OuterXml
XmlDocument mydoc = new XmlDocument();
// Perform application needs here, like mydoc.Load("myfile");
// Now save the entire document to a string variable called "xml".
string xml = mydoc.OuterXml;
Aşağıdaki kod örneğinde yalnızca belge öğesinin nasıl kaydedilecekleri gösterilmektedir.
' For the content of the Document Element only.
Dim xml As String = mydoc.DocumentElement.OuterXml
// For the content of the Document Element only.
string xml = mydoc.DocumentElement.OuterXml;
Buna karşılık, alt düğümlerin içeriğini istiyorsanız InnerText özelliğini kullanabilirsiniz.