IXmlLineInfoとは? わかりやすく解説

IXmlLineInfo インターフェイス

クラスが行情報および位置情報返せるようにするインターフェイス提供します

名前空間: System.Xml
アセンブリ: System.Xml (system.xml.dll 内)
構文構文

public interface IXmlLineInfo
public interface class IXmlLineInfo
public interface IXmlLineInfo
public interface IXmlLineInfo
使用例使用例

XML フラグメント解析する例を次に示します。各ノードが、深さ行番号、行の位置含めて表示されます。

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 nsmgr as XmlNamespaceManager = new
 XmlNamespaceManager(new NameTable())

    ' Create the XmlParserContext.
    Dim context as XmlParserContext = new
 XmlParserContext(nothing, nsmgr, nothing,
 XmlSpace.None)

    ' Create the reader.
    Dim reader as XmlValidatingReader = new
 XmlValidatingReader(xmlFrag, XmlNodeType.Element, context)

    Dim lineInfo as IXmlLineInfo = CType(reader,
 IXmlLineInfo)
    if (lineInfo.HasLineInfo())
       
      ' Parse the XML and display each node.
      while (reader.Read())
       select case reader.NodeType
         case XmlNodeType.Element:
           Console.Write("{0} {1},{2}  ", reader.Depth,
 lineInfo.LineNumber, lineInfo.LinePosition)
           Console.WriteLine("<{0}>", reader.Name)
         case XmlNodeType.Text:
           Console.Write("{0} {1},{2}  ", reader.Depth,
 lineInfo.LineNumber, lineInfo.LinePosition)
           Console.WriteLine("  {0}", reader.Value)
         case XmlNodeType.EndElement:
           Console.Write("{0} {1},{2}  ", reader.Depth,
 lineInfo.LineNumber, lineInfo.LinePosition)
           Console.WriteLine("</{0}>", reader.Name)
       end select       
      end while           
    end if

    ' Close the reader.
    reader.Close()     
  
  end sub
end class
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.
    XmlNamespaceManager nsmgr = new XmlNamespaceManager(new
 NameTable());

    // Create the XmlParserContext.
    XmlParserContext context = new XmlParserContext(null,
 nsmgr, null, XmlSpace.None);

    // Create the reader.
    XmlValidatingReader reader = new XmlValidatingReader(xmlFrag,
 XmlNodeType.Element, context);

    IXmlLineInfo lineInfo = ((IXmlLineInfo)reader);
    if (lineInfo.HasLineInfo()){
       
      // Parse the XML and display each node.
      while (reader.Read()){
       switch (reader.NodeType){
         case XmlNodeType.Element:
           Console.Write("{0} {1},{2}  ", reader.Depth, lineInfo.LineNumber,
 lineInfo.LinePosition);
           Console.WriteLine("<{0}>", reader.Name);
           break;
         case XmlNodeType.Text:
           Console.Write("{0} {1},{2}  ", reader.Depth, lineInfo.LineNumber,
 lineInfo.LinePosition);
           Console.WriteLine("  {0}", reader.Value);
           break;
         case XmlNodeType.EndElement:
           Console.Write("{0} {1},{2}  ", reader.Depth, lineInfo.LineNumber,
 lineInfo.LinePosition);
           Console.WriteLine("</{0}>", reader.Name);
           break;
       }       
     }           
    }

    // Close the reader.
    reader.Close();       
  }
}
#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.
   XmlNamespaceManager^ nsmgr = gcnew XmlNamespaceManager( gcnew NameTable );
   
   // Create the XmlParserContext.
   XmlParserContext^ context = gcnew XmlParserContext( nullptr,nsmgr,nullptr,XmlSpace::None
 );
   
   // Create the reader.
   XmlValidatingReader^ reader = gcnew XmlValidatingReader( xmlFrag,XmlNodeType::Element,context
 );
   IXmlLineInfo^ lineInfo = (dynamic_cast<IXmlLineInfo^>(reader));
   if ( lineInfo->HasLineInfo() )
   {
      
      // Parse the XML and display each node.
      while ( reader->Read() )
      {
         switch ( reader->NodeType )
         {
            case XmlNodeType::Element:
               Console::Write( " {0} {1}, {2}  ", reader->Depth, lineInfo->LineNumber,
 lineInfo->LinePosition );
               Console::WriteLine( "< {0}>", reader->Name );
               break;

            case XmlNodeType::Text:
               Console::Write( " {0} {1}, {2}  ", reader->Depth, lineInfo->LineNumber,
 lineInfo->LinePosition );
               Console::WriteLine( " {0}", reader->Value );
               break;

            case XmlNodeType::EndElement:
               Console::Write( " {0} {1}, {2}  ", reader->Depth, lineInfo->LineNumber,
 lineInfo->LinePosition );
               Console::WriteLine( "</ {0}>", reader->Name );
               break;
         }
      }
   }

   
   // Close the reader.
   reader->Close();
}

import System.*;
import System.IO.*;
import System.Xml.*;

public class Sample
{
    public static void main(String[]
 args)
    {
        // Create the XML fragment to be parsed.
        String xmlFrag = "<book>\n" 
            + "           <misc>\n" 
            + "              <style>paperback</style>\n" 
            + "              <pages>240</pages>\n" 
            + "           </misc>\n" 
            + "        </book>" 
            + "    ";
        
        // Create the XmlNamespaceManager.
        XmlNamespaceManager nsMgr = new XmlNamespaceManager(new
 NameTable());

        // Create the XmlParserContext.
        XmlParserContext context = new XmlParserContext(null,
 nsMgr,
            null, XmlSpace.None);
        
        // Create the reader.
        XmlValidatingReader reader = new XmlValidatingReader(xmlFrag
,
            XmlNodeType.Element, context);
        IXmlLineInfo lineInfo = (IXmlLineInfo)reader;

        if (lineInfo.HasLineInfo()) {
            // Parse the XML and display each node.
            while (reader.Read()) {
                switch (reader.get_NodeType()) {
                    case XmlNodeType.Element :
                        Console.Write("{0} {1},{2}  ", System.Convert.ToString(
                            reader.get_Depth()), System.Convert.ToString(
                            lineInfo.get_LineNumber()), System.Convert.
                            ToString(lineInfo.get_LinePosition()));
                        Console.WriteLine("<{0}>", reader.get_Name());
                        break;
    
                    case XmlNodeType.Text :
                        Console.Write("{0} {1},{2}  ", System.Convert.ToString(
                            reader.get_Depth()), System.Convert.ToString(
                            lineInfo.get_LineNumber()), System.Convert.
                            ToString(lineInfo.get_LinePosition()));
                        Console.WriteLine("  {0}", System.Convert.ToString(
                            reader.get_Value()));
                        break;

                    case XmlNodeType.EndElement :
                        Console.Write("{0} {1},{2}  ", System.Convert.ToString(
                            reader.get_Depth()), System.Convert.ToString(
                            lineInfo.get_LineNumber()), System.Convert.
                            ToString(lineInfo.get_LinePosition()));
                        Console.WriteLine("</{0}>", System.Convert.ToString(
                            reader.get_Name()));
                        break;
                }
            }
        }
        // Close the reader.
        reader.Close();
    } //main
} //Sample
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

IXmlLineInfo プロパティ


IXmlLineInfo メソッド


パブリック メソッドパブリック メソッド

  名前 説明
パブリック メソッド HasLineInfo クラスが行情報返すことができるかどうかを示す値を取得します
参照参照

IXmlLineInfo メンバ




英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「IXmlLineInfo」の関連用語

IXmlLineInfoのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



IXmlLineInfoのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS