XmlTextWriter Sınıf

Tanım

W3C Genişletilebilir Biçimlendirme Dili (XML) 1.0 ve XML önerilerindeki Ad Alanları ile uyumlu XML verileri içeren akışlar veya dosyalar oluşturmanın hızlı, önbelleğe alınmamış, yalnızca ileriye doğru bir yolunu sağlayan bir yazıcıyı temsil eder.

Bunun yerine sınıfını XmlWriter kullanmanızı öneririz.

public ref class XmlTextWriter : System::Xml::XmlWriter
public class XmlTextWriter : System.Xml.XmlWriter
type XmlTextWriter = class
    inherit XmlWriter
Public Class XmlTextWriter
Inherits XmlWriter
Devralma
XmlTextWriter

Açıklamalar

XmlTextWriter sınıfı, XmlWriter sınıfını uygular.

Note

XmlWriter öneririz ki, yeni işlevlerden yararlanmak için XmlWriter.Create yöntemi ve XmlWriterSettings sınıfını kullanarak örnekler oluşturun.

XmlTextWriter geçerli öğe yığınında tanımlanan tüm ad alanlarına karşılık gelen bir ad alanı yığını tutar. kullanarak XmlTextWriter ad alanlarını el ile bildirebilirsiniz.

w.WriteStartElement("root");
w.WriteAttributeString("xmlns", "x", null, "urn:1");
w.WriteStartElement("item","urn:1");
w.WriteEndElement();
w.WriteStartElement("item","urn:1");
w.WriteEndElement();
w.WriteEndElement();

Bu C# kodu aşağıdaki çıkışı oluşturur. XmlTextWriter iki alt öğede çoğaltılmasını önlemek için ad alanı bildirimini kök öğeye yükselter. Alt öğeler, ad alanı bildiriminden ön eki alır.

<root xmlns:x="urn:1">
<x:item/>
<x:item/>
</root>

XmlTextWriter ayrıca geçerli ad alanı bildirimini geçersiz kılmanızı sağlar. Aşağıdaki örnekte, "123" ad alanı URI'sinin "abc" tarafından geçersiz kılınarak XML öğesini <x:node xmlns:x="abc"/>üretmesi sağlanır.

w.WriteStartElement("x","node","123");
w.WriteAttributeString("xmlns","x",null,"abc");

Bir öneki bağımsız değişken olarak alan yazma yöntemlerini kullanarak, hangi ön ekin kullanılacağını da belirtebilirsiniz. Aşağıdaki örnekte, XML metnini <x:root xmlns:x="urn:1"><y:item xmlns:y="urn:1"/></x:root>oluşturmak için aynı ad alanı URI'sine iki farklı ön ek eşlenir.

XmlTextWriter w = new XmlTextWriter(Console.Out);
w.WriteStartElement("x","root","urn:1");
w.WriteStartElement("y","item","urn:1");
w.WriteEndElement();
w.WriteEndElement();
w.Close();

Farklı ön ekleri aynı ad alanı URI'sine eşleten birden çok ad alanı bildirimi varsa, XmlTextWriter ad alanı bildirimleri yığınını geriye doğru gösterir ve en yakın olanı seçer.

XmlTextWriter w = new XmlTextWriter(Console.Out);
w.Formatting = Formatting.Indented;
w.WriteStartElement("x","root","urn:1");
w.WriteStartElement("y","item","urn:1");
w.WriteAttributeString("attr","urn:1","123");
w.WriteEndElement();
w.WriteEndElement();
w.Close();

Bu C# örneğinde, WriteAttributeString çağrı bir ön ek belirtmediğinden, yazıcı ad alanı yığınına gönderilen son ön eki kullanır ve aşağıdaki XML'yi üretir:

<x:root xmlns:x="urn:1">
<y:item y:attr="123" xmlns:y="urn:1" />
</x:root>

Ad alanı çakışmaları oluşursa, XmlTextWriter alternatif ön ekler oluşturarak bunları çözümler. Örneğin, bir öznitelik ve öğe aynı ön eke ancak farklı ad alanlarına sahipse, XmlWriter öznitelik için alternatif bir ön ek oluşturur. Oluşturulan ön eklerin adı n{i}i , 1'den başlayan bir sayıdır. Sayı her öğe için 1 olarak sıfırlanır.

Ad alanı URI'siyle ilişkili özniteliklerin bir ön eki olmalıdır (varsayılan ad alanları özniteliklere uygulanmaz). Bu, XML'de W3C Ad Alanları önerisinin 5.2. bölümüne uygundur. Bir öznitelik bir ad alanı URI'sine başvuruyor ancak bir ön ek belirtmiyorsa, yazıcı öznitelik için bir ön ek oluşturur.

Boş bir öğe yazarken, etiket adı ile kapanış etiketi arasına ek bir alan eklenir, örneğin <item />. Bu, eski tarayıcılarla uyumluluk sağlar.

Bir String yöntem parametresi olarak kullanıldığında, null ve String.Empty eşdeğerdir. String.Empty W3C kurallarını izler.

Güçlü tipli veriler yazmak için, veri türlerini dizeye dönüştürmek amacıyla XmlConvert sınıfını kullanın. Örneğin, aşağıdaki C# kodu, verileri Double öğesinden String öğesine dönüştürür ve <price>19.95</price> öğesini yazar.

Double price = 19.95;
writer.WriteElementString("price", XmlConvert.ToString(price));

XmlTextWriter aşağıdakileri denetlemez:

  • Öznitelik ve öğe adlarında geçersiz karakterler.
  • Belirtilen kodlamaya uymayan Unicode karakterler. Unicode karakterleri belirtilen kodlamaya uymuyorsa, XmlTextWriter Unicode karakterleri karakter varlıklarına dönüştürmez.
  • Yinelenen öznitelikler.
  • DOCTYPE ortak tanımlayıcısında veya sistem tanımlayıcısında bulunan karakterler.

Güvenlik konuları

Aşağıdaki öğeler, XmlTextWriter sınıfıyla çalışırken dikkate alınması gereken şeylerdir.

  • XmlTextWriter tarafından atılan özel durumlar, uygulamaya kabarmasını istemediğiniz yol bilgisini ifşa edebilir. Uygulamalarınız özel durumları yakalamalı ve uygun şekilde işlemelidir.

  • XmlTextWriter'ü başka bir uygulamaya aktardığınızda, altta yatan akış bu uygulamaya açığa çıkar. Eğer XmlTextWriter öğesini yarı güvenilir bir uygulamaya geçirmeniz gerekiyorsa, bunun yerine XmlWriter yöntemi tarafından oluşturulan bir Create nesnesi kullanmanız gerekir.

  • XmlTextWriter, WriteDocType veya WriteRaw yöntemlerine geçirilen verileri doğrulamaz. Bu yöntemlere rastgele veriler geçirmemelisiniz.

  • Varsayılan ayarlar değiştirilirse, oluşturulan çıkışın iyi biçimlendirilmiş XML verileri olması garanti değildir.

  • Güvenilmeyen bir Encoding kaynaktan nesne gibi destekleyici bileşenleri kabul etmeyin.

Oluşturucular

Name Description
XmlTextWriter(Stream, Encoding)

Belirtilen akışı ve kodlamayı XmlTextWriter kullanarak sınıfının bir örneğini oluşturur.

XmlTextWriter(String, Encoding)

Belirtilen dosyayı kullanarak sınıfının bir örneğini XmlTextWriter oluşturur.

XmlTextWriter(TextWriter)

Belirtilen XmlTextWriteröğesini kullanarak sınıfının bir örneğini TextWriter oluşturur.

Özellikler

Name Description
BaseStream

Temel alınan akış nesnesini alır.

Formatting

Çıkışın nasıl biçimlendirildiğini gösterir.

Indentation

olarak ayarlandığında Formattinghiyerarşideki Formatting.Indented her düzey için kaç IndentChar yazacaklarını alır veya ayarlar.

IndentChar

olarak ayarlandığında Formattinggirintileme Formatting.Indented için hangi karakterin kullanılacağını alır veya ayarlar.

Namespaces

Ad alanı desteği yapılıp yapılmayacağını belirten bir değer alır veya ayarlar.

QuoteChar

Öznitelik değerlerini tırnak içine almak için kullanılacak karakteri alır veya ayarlar.

Settings

XmlWriterSettings Bu XmlWriter örneği oluşturmak için kullanılan nesneyi alır.

(Devralındığı yer: XmlWriter)
WriteState

Yazarın durumunu alır.

XmlLang

Geçerli xml:lang kapsamı alır.

XmlSpace

Geçerli XmlSpace kapsamı temsil eden bir xml:space alır.

Yöntemler

Name Description
Close()

Bu akışı ve temel alınan akışı kapatır.

Dispose()

Sınıfın geçerli örneği XmlWriter tarafından kullanılan tüm kaynakları serbest bırakır.

(Devralındığı yer: XmlWriter)
Dispose(Boolean)

tarafından XmlWriter kullanılan yönetilmeyen kaynakları serbest bırakır ve isteğe bağlı olarak yönetilen kaynakları serbest bırakır.

(Devralındığı yer: XmlWriter)
DisposeAsync()

Yönetilmeyen kaynakları zaman uyumsuz olarak serbest bırakma, serbest bırakma veya sıfırlama ile ilişkili uygulama tanımlı görevleri gerçekleştirir.

(Devralındığı yer: XmlWriter)
DisposeAsyncCore()

Yönetilen kaynakları serbest bırakma, serbest bırakma veya sıfırlama ile ilişkili uygulama tanımlı görevleri zaman uyumsuz olarak gerçekleştirir.

(Devralındığı yer: XmlWriter)
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
Flush()

Arabellekteki her şeyi temel alınan akışlara boşaltır ve ayrıca temel alınan akışı temizler.

FlushAsync()

Arabellekteki her şeyi zaman uyumsuz olarak temel alınan akışlara boşaltır ve ayrıca temel alınan akışı temizler.

(Devralındığı yer: XmlWriter)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
LookupPrefix(String)

Ad alanı URI'sinin geçerli ad alanı kapsamında tanımlanan en yakın ön eki döndürür.

MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)
WriteAttributes(XmlReader, Boolean)

Türetilmiş bir sınıfta geçersiz kılındığında, içindeki geçerli konumda XmlReaderbulunan tüm öznitelikleri yazar.

(Devralındığı yer: XmlWriter)
WriteAttributesAsync(XmlReader, Boolean)

içindeki geçerli konumda XmlReaderbulunan tüm öznitelikleri zaman uyumsuz olarak yazar.

(Devralındığı yer: XmlWriter)
WriteAttributeString(String, String, String, String)

Türetilmiş bir sınıfta geçersiz kılındığında özniteliğini belirtilen ön ek, yerel ad, ad alanı URI'si ve değerle yazar.

(Devralındığı yer: XmlWriter)
WriteAttributeString(String, String, String)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen yerel ada, ad alanı URI'sine ve değere sahip bir öznitelik yazar.

(Devralındığı yer: XmlWriter)
WriteAttributeString(String, String)

Türetilmiş bir sınıfta geçersiz kılındığında, özniteliğini belirtilen yerel ad ve değerle yazar.

(Devralındığı yer: XmlWriter)
WriteAttributeStringAsync(String, String, String, String)

Belirtilen ön ek, yerel ad, ad alanı URI'si ve değerle özniteliğini zaman uyumsuz olarak yazar.

(Devralındığı yer: XmlWriter)
WriteBase64(Byte[], Int32, Int32)

Belirtilen ikili baytları base64 olarak kodlar ve sonuçta elde edilen metni yazar.

WriteBase64Async(Byte[], Int32, Int32)

Belirtilen ikili baytları zaman uyumsuz olarak Base64 olarak kodlar ve sonuçta elde edilen metni yazar.

(Devralındığı yer: XmlWriter)
WriteBinHex(Byte[], Int32, Int32)

Belirtilen ikili baytları binhex olarak kodlar ve sonuçta elde edilen metni yazar.

WriteBinHexAsync(Byte[], Int32, Int32)

Belirtilen ikili baytları zaman uyumsuz olarak BinHex kodlar ve sonuçta elde edilen metni yazar.

(Devralındığı yer: XmlWriter)
WriteCData(String)

Bir ![ yazar < CDATA[...]]> belirtilen metni içeren blok.

WriteCDataAsync(String)

Zaman uyumsuz olarak bir <![ yazar CDATA[...]]> belirtilen metni içeren blok.

(Devralındığı yer: XmlWriter)
WriteCharEntity(Char)

Belirtilen Unicode karakter değeri için karakter varlığının oluşturulmasını zorlar.

WriteCharEntityAsync(Char)

Belirtilen Unicode karakter değeri için bir karakter varlığının oluşturulmasını zaman uyumsuz olarak zorlar.

(Devralındığı yer: XmlWriter)
WriteChars(Char[], Int32, Int32)

Metni bir kerede bir arabellek yazar.

WriteCharsAsync(Char[], Int32, Int32)

Metni zaman uyumsuz olarak bir kerede bir arabelleğe yazar.

(Devralındığı yer: XmlWriter)
WriteComment(String)

Belirtilen metni içeren bir açıklama <--...--> yazar.

WriteCommentAsync(String)

Belirtilen metni içeren bir açıklama <--...--> zaman uyumsuz olarak yazar.

(Devralındığı yer: XmlWriter)
WriteDocType(String, String, String, String)

BELIRTILEN ad ve isteğe bağlı özniteliklerle DOCTYPE bildirimini yazar.

WriteDocTypeAsync(String, String, String, String)

DOCTYPE bildirimini zaman uyumsuz olarak belirtilen ad ve isteğe bağlı özniteliklerle yazar.

(Devralındığı yer: XmlWriter)
WriteElementString(String, String, String, String)

Belirtilen ön ek, yerel ad, ad alanı URI'sine ve değere sahip bir öğe yazar.

(Devralındığı yer: XmlWriter)
WriteElementString(String, String, String)

Belirtilen yerel ada, ad alanı URI'sine ve değere sahip bir öğe yazar.

(Devralındığı yer: XmlWriter)
WriteElementString(String, String)

Belirtilen yerel ada ve değere sahip bir öğe yazar.

(Devralındığı yer: XmlWriter)
WriteElementStringAsync(String, String, String, String)

Belirtilen ön ek, yerel ad, ad alanı URI'si ve değere sahip bir öğeyi zaman uyumsuz olarak yazar.

(Devralındığı yer: XmlWriter)
WriteEndAttribute()

Önceki WriteStartAttribute(String, String, String) aramayı kapatır.

WriteEndAttributeAsync()

Önceki WriteStartAttribute(String, String) çağrıyı zaman uyumsuz olarak kapatır.

(Devralındığı yer: XmlWriter)
WriteEndDocument()

Açık öğeleri veya öznitelikleri kapatır ve yazıcıyı Yeniden Başlangıç durumuna getirir.

WriteEndDocumentAsync()

Açık öğeleri veya öznitelikleri zaman uyumsuz olarak kapatır ve yazıcıyı Yeniden Başlangıç durumuna getirir.

(Devralındığı yer: XmlWriter)
WriteEndElement()

Bir öğeyi kapatır ve ilgili ad alanı kapsamını açar.

WriteEndElementAsync()

Zaman uyumsuz olarak bir öğeyi kapatır ve ilgili ad alanı kapsamını açar.

(Devralındığı yer: XmlWriter)
WriteEntityRef(String)

Varlık başvurularını olarak &name;yazar.

WriteEntityRefAsync(String)

Varlık başvurularını zaman uyumsuz olarak olarak &name;yazar.

(Devralındığı yer: XmlWriter)
WriteFullEndElement()

Bir öğeyi kapatır ve ilgili ad alanı kapsamını açar.

WriteFullEndElementAsync()

Zaman uyumsuz olarak bir öğeyi kapatır ve ilgili ad alanı kapsamını açar.

(Devralındığı yer: XmlWriter)
WriteName(String)

W3C XML 1.0 önerisine göre geçerli bir ad olduğundan emin olarak belirtilen adı yazar.

WriteNameAsync(String)

W3C XML 1.0 önerisine (https://www.w3.org/TR/1998/REC-xml-19980210#NT-Name) göre geçerli bir ad olduğundan emin olarak, belirtilen adı zaman uyumsuz olarak yazar.

(Devralındığı yer: XmlWriter)
WriteNmToken(String)

NmToken göre geçerli olduğundan emin olarak belirtilen adı yazar.

WriteNmTokenAsync(String)

W3C XML 1.0 önerisine (https://www.w3.org/TR/1998/REC-xml-19980210#NT-Name) göre geçerli bir NmToken olduğundan emin olarak belirtilen adı zaman uyumsuz olarak yazar.

(Devralındığı yer: XmlWriter)
WriteNode(XmlReader, Boolean)

Türetilmiş bir sınıfta geçersiz kılındığında, okuyucudan yazıcıya her şeyi kopyalar ve okuyucuyu bir sonraki eşdüzeyin başına taşır.

(Devralındığı yer: XmlWriter)
WriteNode(XPathNavigator, Boolean)

Nesnedeki XPathNavigator her şeyi yazıcıya kopyalar. XPathNavigator Konumu değişmeden kalır.

(Devralındığı yer: XmlWriter)
WriteNodeAsync(XmlReader, Boolean)

Okuyucudaki her şeyi zaman uyumsuz olarak yazıcıya kopyalar ve okuyucuyu bir sonraki eşdüzeyin başlangıcına taşır.

(Devralındığı yer: XmlWriter)
WriteNodeAsync(XPathNavigator, Boolean)

Nesnedeki XPathNavigator her şeyi zaman uyumsuz olarak yazıcıya kopyalar. XPathNavigator Konumu değişmeden kalır.

(Devralındığı yer: XmlWriter)
WriteProcessingInstruction(String, String)

Ad ve metin arasında bir boşluk olan bir işleme yönergesini şu şekilde yazar: <?name text?>.

WriteProcessingInstructionAsync(String, String)

Ad ve metin arasında aşağıdaki gibi bir boşluk olan bir işlem yönergesini zaman uyumsuz olarak yazar: <?name text?>.

(Devralındığı yer: XmlWriter)
WriteQualifiedName(String, String)

Ad alanı nitelenmiş adını yazar. Bu yöntem, verilen ad alanının kapsamındaki ön eki arar.

WriteQualifiedNameAsync(String, String)

Ad alanı nitelenmiş adını zaman uyumsuz olarak yazar. Bu yöntem, verilen ad alanının kapsamındaki ön eki arar.

(Devralındığı yer: XmlWriter)
WriteRaw(Char[], Int32, Int32)

Ham işaretlemeyi bir karakter arabelleğinden el ile yazar.

WriteRaw(String)

Ham işaretlemeyi bir dizeden el ile yazar.

WriteRawAsync(Char[], Int32, Int32)

Ham işaretlemeyi bir karakter arabelleğinden el ile zaman uyumsuz olarak yazar.

(Devralındığı yer: XmlWriter)
WriteRawAsync(String)

Ham işaretlemeyi bir dizeden el ile zaman uyumsuz olarak yazar.

(Devralındığı yer: XmlWriter)
WriteStartAttribute(String, String, String)

Özniteliğin başlangıcını yazar.

WriteStartAttribute(String, String)

Belirtilen yerel ad ve ad alanı URI'sine sahip bir özniteliğin başlangıcını yazar.

(Devralındığı yer: XmlWriter)
WriteStartAttribute(String)

Belirtilen yerel ada sahip bir özniteliğin başlangıcını yazar.

(Devralındığı yer: XmlWriter)
WriteStartAttributeAsync(String, String, String)

Belirtilen ön ek, yerel ad ve ad alanı URI'sine sahip bir özniteliğin başlangıcını zaman uyumsuz olarak yazar.

(Devralındığı yer: XmlWriter)
WriteStartDocument()

XML bildirimini "1.0" sürümüyle yazar.

WriteStartDocument(Boolean)

XML bildirimini "1.0" sürümü ve tek başına özniteliğiyle yazar.

WriteStartDocumentAsync()

XML bildirimini zaman uyumsuz olarak "1.0" sürümüyle yazar.

(Devralındığı yer: XmlWriter)
WriteStartDocumentAsync(Boolean)

XML bildirimini zaman uyumsuz olarak "1.0" sürümü ve tek başına özniteliğiyle yazar.

(Devralındığı yer: XmlWriter)
WriteStartElement(String, String, String)

Belirtilen başlangıç etiketini yazar ve belirtilen ad alanı ve ön ek ile ilişkilendirir.

WriteStartElement(String, String)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen başlangıç etiketini yazar ve belirtilen ad alanıyla ilişkilendirir.

(Devralındığı yer: XmlWriter)
WriteStartElement(String)

Türetilmiş bir sınıfta geçersiz kılındığında, belirtilen yerel ada sahip bir başlangıç etiketi yazar.

(Devralındığı yer: XmlWriter)
WriteStartElementAsync(String, String, String)

Belirtilen başlangıç etiketini zaman uyumsuz olarak yazar ve belirtilen ad alanı ve ön ek ile ilişkilendirir.

(Devralındığı yer: XmlWriter)
WriteString(String)

Verilen metin içeriğini yazar.

WriteStringAsync(String)

Verilen metin içeriğini zaman uyumsuz olarak yazar.

(Devralındığı yer: XmlWriter)
WriteSurrogateCharEntity(Char, Char)

Vekil karakter çifti için vekil karakter varlığını oluşturur ve yazar.

WriteSurrogateCharEntityAsync(Char, Char)

Vekil karakter çifti için zaman uyumsuz olarak vekil karakter varlığını oluşturur ve yazar.

(Devralındığı yer: XmlWriter)
WriteValue(Boolean)

Bir Boolean değer yazar.

(Devralındığı yer: XmlWriter)
WriteValue(DateTime)

Bir DateTime değer yazar.

(Devralındığı yer: XmlWriter)
WriteValue(DateTimeOffset)

Bir DateTimeOffset değer yazar.

(Devralındığı yer: XmlWriter)
WriteValue(Decimal)

Bir Decimal değer yazar.

(Devralındığı yer: XmlWriter)
WriteValue(Double)

Bir Double değer yazar.

(Devralındığı yer: XmlWriter)
WriteValue(Int32)

Bir Int32 değer yazar.

(Devralındığı yer: XmlWriter)
WriteValue(Int64)

Bir Int64 değer yazar.

(Devralındığı yer: XmlWriter)
WriteValue(Object)

Nesne değerini yazar.

(Devralındığı yer: XmlWriter)
WriteValue(Single)

Tek duyarlıklı kayan noktalı sayı yazar.

(Devralındığı yer: XmlWriter)
WriteValue(String)

Bir String değer yazar.

(Devralındığı yer: XmlWriter)
WriteWhitespace(String)

Verilen boşluğu yazar.

WriteWhitespaceAsync(String)

Verilen boşluğu zaman uyumsuz olarak yazar.

(Devralındığı yer: XmlWriter)

Belirtik Arabirim Kullanımları

Name Description
IDisposable.Dispose()

Bu üyenin açıklaması için bkz Dispose(). .

(Devralındığı yer: XmlWriter)

Uzantı Metotları

Name Description
ConfigureAwait(IAsyncDisposable, Boolean)

Zaman uyumsuz bir atılabilir öğeden döndürülen görevlerde awaits işleminin nasıl gerçekleştirileceğini yapılandırılır.

Şunlara uygulanır

Ayrıca bkz.