現在の行番号を取得します。
Public Overridable ReadOnly Property LineNumber As Integer _ Implements IXmlLineInfo.LineNumber
[C#]
public virtual int LineNumber {get;}
[C++]
public: __property virtual int get_LineNumber();
[JScript]
public function get LineNumber() : int;
プロパティ値
現在の行番号。
実装
解説
通常、このプロパティは、エラーのレポートに使用されますが、いつでも呼び出すことができます。このプロパティの開始値は 1 です。
LinePosition と組み合わせると、 1,1 の値は、ドキュメントの開始を示します。
使用例
[Visual Basic, C#, C++] 深さ、行番号、行の位置などを含む各ノードを表示する例を次に示します。
Imports System
Imports System.IO
Imports System.Xml
Imports Microsoft.VisualBasic
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
[C#]
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();
}
}
[C++]
#using <mscorlib.dll>
#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 =
S"<book>\n"
S"<misc>\n"
S"<style>paperback</style>\n"
S"<pages>240</pages>\n"
S"</misc>\n"
S"</book>\n";
// Create the XmlNamespaceManager.
NameTable* nt = new NameTable();
XmlNamespaceManager* nsmgr = new XmlNamespaceManager(nt);
// Create the XmlParserContext.
XmlParserContext* context = new XmlParserContext(0, nsmgr, 0, 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(S" {0} {1}, {2} ", __box(reader -> Depth), __box(reader -> LineNumber), __box(reader -> LinePosition));
Console::WriteLine(S"< {0}>", reader -> Name);
break;
case XmlNodeType::Text:
Console::Write(S" {0} {1}, {2} ", __box(reader -> Depth), __box(reader -> LineNumber), __box(reader -> LinePosition));
Console::WriteLine(S" {0}", reader -> Value);
break;
case XmlNodeType::EndElement:
Console::Write(S" {0} {1}, {2} ", __box(reader -> Depth), __box(reader -> LineNumber), __box(reader -> LinePosition));
Console::WriteLine(S"</ {0}>", reader -> Name);
break;
}
}
// Close the reader.
reader -> Close();
}
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET, Common Language Infrastructure (CLI) Standard