XmlValidatingReader.ReadString Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir öğenin veya metin düğümünün içeriğini dize olarak okur.
public:
override System::String ^ ReadString();
public override string ReadString ();
override this.ReadString : unit -> string
Public Overrides Function ReadString () As String
Döndürülenler
Öğenin veya metin düğümünün içeriği. Okuyucu bir öğe veya metin düğümü dışında bir şeyin üzerine konumlandırıldıysa veya geçerli bağlamda döndürülecek başka metin içeriği yoksa, bu boş bir dize olabilir.
Örnekler
Aşağıdaki örnek, öğelerin her birinin metin içeriğini görüntüler.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
XmlTextReader^ txtreader = nullptr;
XmlValidatingReader^ reader = nullptr;
try
{
//Implement the readers.
txtreader = gcnew XmlTextReader( "elems.xml" );
reader = gcnew XmlValidatingReader( txtreader );
//Parse the XML and display the text content of each of the elements.
while ( reader->Read() )
{
if ( reader->IsStartElement() )
{
if ( reader->IsEmptyElement )
Console::WriteLine( "<{0}/>", reader->Name );
else
{
Console::Write( "<{0}> ", reader->Name );
reader->Read(); //Read the start tag.
if ( reader->IsStartElement() )
//Handle nested elements.
Console::Write( "\r\n<{0}>", reader->Name );
Console::WriteLine( reader->ReadString() ); //Read the text content of the element.
}
}
}
}
finally
{
if ( reader != nullptr )
reader->Close();
}
}
using System;
using System.IO;
using System.Xml;
public class Sample
{
public static void Main()
{
XmlTextReader txtreader = null;
XmlValidatingReader reader = null;
try
{
//Implement the readers.
txtreader = new XmlTextReader("elems.xml");
reader = new XmlValidatingReader(txtreader);
//Parse the XML and display the text content of each of the elements.
while (reader.Read()){
if (reader.IsStartElement()){
if (reader.IsEmptyElement)
{
Console.WriteLine("<{0}/>", reader.Name);
}
else
{
Console.Write("<{0}> ", reader.Name);
reader.Read(); //Read the start tag.
if (reader.IsStartElement()) //Handle nested elements.
Console.Write("\r\n<{0}>", reader.Name);
Console.WriteLine(reader.ReadString()); //Read the text content of the element.
}
}
}
}
finally
{
if (reader != null)
reader.Close();
}
}
} // End class
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
Dim txtreader As XmlTextReader = Nothing
Dim reader As XmlValidatingReader = Nothing
Try
'Implement the readers.
txtreader = New XmlTextReader("elems.xml")
reader = New XmlValidatingReader(txtreader)
'Parse the XML and display the text content of each of the elements.
While reader.Read()
If reader.IsStartElement() Then
If reader.IsEmptyElement Then
Console.WriteLine("<{0}/>", reader.Name)
Else
Console.Write("<{0}> ", reader.Name)
reader.Read() 'Read the start tag.
If (reader.IsStartElement()) 'Handle nested elements.
Console.WriteLine()
Console.Write("<{0}>", reader.Name)
End If
Console.WriteLine(reader.ReadString()) 'Read the text content of the element.
End If
End If
End While
Finally
If Not (reader Is Nothing) Then
reader.Close()
End If
End Try
End Sub
End Class
Örnekte giriş olarak dosyası elems.xml
kullanılır.
<book>
<title>Pride And Prejudice</title>
<price>19.95</price>
<misc/>
</book>
Açıklamalar
Metin düğümü bir öğe veya öznitelik metin düğümü olabilir.
Not
sınıf XmlValidatingReader .NET Framework 2.0'da kullanımdan kaldırıldı. sınıfını ve Create yöntemini kullanarak XmlReaderSettings bir doğrulama XmlReader örneği oluşturabilirsiniz. Daha fazla bilgi için başvuru sayfasının Açıklamalar bölümüne XmlReader bakın.
Bir öğeye konumlandırıldıysa, tüm metinleri, ReadString
önemli boşluk, boşluk ve CDATA bölüm düğümü türlerini birleştirir ve birleştirilmiş verileri öğe içeriği olarak döndürür. Açıklamalar ve işleme yönergeleri de dahil olmak üzere herhangi bir işaretlemeyle karşılaşıldığında okuyucu durur. Bu, karma içerik modelinde veya öğe bitiş etiketi okunduğunda oluşabilir.
Bir metin düğümünde konumlandırıldıysa, ReadString
aynı birleştirmeyi metin düğümünden öğe bitiş etiketine gerçekleştirir. Okuyucu bir öznitelik metin düğümünde konumlandırıldıysa, ReadString
okuyucu öğe başlangıç etiketinde konumlandırılmış gibi aynı işlevselliğe sahiptir. Tüm birleştirilmiş öğe metin düğümlerini döndürür.
özelliği, EntityHandling nasıl ReadString
çalıştığını aşağıdaki gibi belirler:
Değer | Açıklama |
---|---|
ExpandEntities | Genişletilmiş karakteri ve genel varlıkları döndürür. Bu varsayılan seçenektir. |
ExpandCharEntities | Genel varlık başvurusu dahil olmak üzere en fazla metin içeriğini döndürür. Bu, genel bir varlığın ReadString'in durmasına neden olduğu anlamına gelir. Varlık başvurusunun üzerine gitmek için çağrısında Read bulunmalısınız. |