XmlTextReader.LinePosition Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die aktuelle Zeilenposition ab.
public:
property int LinePosition { int get(); };
public int LinePosition { get; }
member this.LinePosition : int
Public ReadOnly Property LinePosition As Integer
Eigenschaftswert
Die aktuelle Zeilenposition.
Implementiert
Beispiele
Im folgenden Beispiel wird jeder Knoten angezeigt, einschließlich seiner Tiefen-, Liniennummer- und Linienposition.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
// Create the XML fragment to be parsed.
String^ xmlFrag = "<book>\n"
"<misc>\n"
"<style>paperback</style>\n"
"<pages>240</pages>\n"
"</misc>\n"
"</book>\n";
// Create the XmlNamespaceManager.
NameTable^ nt = gcnew NameTable;
XmlNamespaceManager^ nsmgr = gcnew XmlNamespaceManager( nt );
// Create the XmlParserContext.
XmlParserContext^ context = gcnew XmlParserContext( nullptr,nsmgr,nullptr,XmlSpace::None );
// Create the reader.
XmlTextReader^ reader = gcnew XmlTextReader( xmlFrag,XmlNodeType::Element,context );
// Parse the XML and display each node.
while ( reader->Read() )
{
switch ( reader->NodeType )
{
case XmlNodeType::Element:
Console::Write( " {0} {1}, {2} ", reader->Depth, reader->LineNumber, reader->LinePosition );
Console::WriteLine( "< {0}>", reader->Name );
break;
case XmlNodeType::Text:
Console::Write( " {0} {1}, {2} ", reader->Depth, reader->LineNumber, reader->LinePosition );
Console::WriteLine( " {0}", reader->Value );
break;
case XmlNodeType::EndElement:
Console::Write( " {0} {1}, {2} ", reader->Depth, reader->LineNumber, reader->LinePosition );
Console::WriteLine( "</ {0}>", reader->Name );
break;
}
}
// Close the reader.
reader->Close();
}
using System;
using System.IO;
using System.Xml;
public class Sample{
public static void Main(){
// Create the XML fragment to be parsed.
string xmlFrag =
@"<book>
<misc>
<style>paperback</style>
<pages>240</pages>
</misc>
</book>";
// Create the XmlNamespaceManager.
NameTable nt = new NameTable();
XmlNamespaceManager nsmgr = new XmlNamespaceManager(nt);
// Create the XmlParserContext.
XmlParserContext context = new XmlParserContext(null, nsmgr, null, XmlSpace.None);
// Create the reader.
XmlTextReader reader = new XmlTextReader(xmlFrag, XmlNodeType.Element, context);
// Parse the XML and display each node.
while (reader.Read()){
switch (reader.NodeType){
case XmlNodeType.Element:
Console.Write("{0} {1},{2} ", reader.Depth, reader.LineNumber, reader.LinePosition);
Console.WriteLine("<{0}>", reader.Name);
break;
case XmlNodeType.Text:
Console.Write("{0} {1},{2} ", reader.Depth, reader.LineNumber, reader.LinePosition);
Console.WriteLine(" {0}", reader.Value);
break;
case XmlNodeType.EndElement:
Console.Write("{0} {1},{2} ", reader.Depth, reader.LineNumber, reader.LinePosition);
Console.WriteLine("</{0}>", reader.Name);
break;
}
}
// Close the reader.
reader.Close();
}
}
Imports System.IO
Imports System.Xml
public class Sample
public shared sub Main()
' Create the XML fragment to be parsed.
Dim xmlFrag as string = "<book>" + Chr(10) & _
" <misc>" + Chr(10) & _
" <style>paperback</style>" + Chr(10) & _
" <pages>240</pages>" + Chr(10) & _
" </misc>" + Chr(10) & _
"</book>"
' Create the XmlNamespaceManager.
Dim nt as NameTable = new NameTable()
Dim nsmgr as XmlNamespaceManager = new XmlNamespaceManager(nt)
' Create the XmlParserContext.
Dim context as XmlParserContext = new XmlParserContext(nothing, nsmgr, nothing, XmlSpace.None)
' Create the reader.
Dim reader as XmlTextReader = new XmlTextReader(xmlFrag, XmlNodeType.Element, context)
' Parse the XML and display each node.
while (reader.Read())
select case reader.NodeType
case XmlNodeType.Element:
Console.Write("{0} {1},{2} ", reader.Depth, reader.LineNumber, reader.LinePosition)
Console.WriteLine("<{0}>", reader.Name)
case XmlNodeType.Text:
Console.Write("{0} {1},{2} ", reader.Depth, reader.LineNumber, reader.LinePosition)
Console.WriteLine(" {0}", reader.Value)
case XmlNodeType.EndElement:
Console.Write("{0} {1},{2} ", reader.Depth, reader.LineNumber, reader.LinePosition)
Console.WriteLine("</{0}>", reader.Name)
end select
end while
' Close the reader.
reader.Close()
end sub
end class
Hinweise
Hinweis
Ab dem .NET Framework 2.0 empfehlen wir, Instanzen mithilfe der XmlReader.Create Methode zu erstellenXmlReader, um neue Funktionen zu nutzen.
Diese Eigenschaft wird am häufigsten für die Fehlerberichterstattung verwendet, kann jedoch jederzeit aufgerufen werden. Der Startwert der Eigenschaft ist 1
.
Die angegebene Position ist das erste Zeichen des Texts im Markup.
<root>
abc<tag/>
</root>
In der ersten Zeile des vorhergehenden XML-Texts entspricht ein 2
LinePosition
r
Zeichen dem Zeichen; auf der zweiten Zeile entspricht einer von dem Zeichen; und auf der dritten Zeile entspricht eine LinePosition
LinePosition
5
von 3
dem Zeichen.t``r
Kombiniert mit einem Wert, LineNumber1,1
der den Anfang des Dokuments angibt.