XmlNodeReader.Close Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Cambia la propiedad ReadState a Closed
.
public:
override void Close();
public override void Close ();
override this.Close : unit -> unit
Public Overrides Sub Close ()
Ejemplos
En el ejemplo siguiente se analiza un archivo y se cierra el lector.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
String^ filename = "items.xml";
XmlNodeReader^ reader = nullptr;
try
{
//Create an XmlNodeReader to read the XmlDocument.
XmlDocument^ doc = gcnew XmlDocument;
doc->Load( filename );
reader = gcnew XmlNodeReader( doc );
//Parse the file and display each of the nodes.
while ( reader->Read() )
{
switch ( reader->NodeType )
{
case XmlNodeType::Element:
Console::Write( "<{0}>", reader->Name );
break;
case XmlNodeType::Text:
Console::Write( reader->Value );
break;
case XmlNodeType::CDATA:
Console::Write( reader->Value );
break;
case XmlNodeType::ProcessingInstruction:
Console::Write( "<?{0} {1}?>", reader->Name, reader->Value );
break;
case XmlNodeType::Comment:
Console::Write( "<!--{0}-->", reader->Value );
break;
case XmlNodeType::XmlDeclaration:
Console::Write( "<?xml version='1.0'?>" );
break;
case XmlNodeType::Document:
break;
case XmlNodeType::EndElement:
Console::Write( "</{0}>", reader->Name );
break;
}
}
}
finally
{
if ( reader != nullptr )
reader->Close();
}
}
using System;
using System.IO;
using System.Xml;
public class Sample
{
private const String filename = "items.xml";
public static void Main()
{
XmlNodeReader reader = null;
try
{
//Create an XmlNodeReader to read the XmlDocument.
XmlDocument doc = new XmlDocument();
doc.Load(filename);
reader = new XmlNodeReader(doc);
//Parse the file and display each of the nodes.
while (reader.Read())
{
switch (reader.NodeType)
{
case XmlNodeType.Element:
Console.Write("<{0}>", reader.Name);
break;
case XmlNodeType.Text:
Console.Write(reader.Value);
break;
case XmlNodeType.CDATA:
Console.Write(reader.Value);
break;
case XmlNodeType.ProcessingInstruction:
Console.Write("<?{0} {1}?>", reader.Name, reader.Value);
break;
case XmlNodeType.Comment:
Console.Write("<!--{0}-->", reader.Value);
break;
case XmlNodeType.XmlDeclaration:
Console.Write("<?xml version='1.0'?>");
break;
case XmlNodeType.Document:
break;
case XmlNodeType.EndElement:
Console.Write("</{0}>", reader.Name);
break;
}
}
}
finally
{
if (reader!=null)
reader.Close();
}
}
} // End class
Imports System.IO
Imports System.Xml
Public Class Sample
Private Const filename As String = "items.xml"
Public Shared Sub Main()
Dim reader As XmlNodeReader = Nothing
Try
'Create an XmlNodeReader to read the XmlDocument.
Dim doc As New XmlDocument()
doc.Load(filename)
reader = New XmlNodeReader(doc)
'Parse the file and display each of the nodes.
While reader.Read()
Select Case reader.NodeType
Case XmlNodeType.Element
Console.Write("<{0}>", reader.Name)
Case XmlNodeType.Text
Console.Write(reader.Value)
Case XmlNodeType.CDATA
Console.Write(reader.Value)
Case XmlNodeType.ProcessingInstruction
Console.Write("<?{0} {1}?>", reader.Name, reader.Value)
Case XmlNodeType.Comment
Console.Write("<!--{0}-->", reader.Value)
Case XmlNodeType.XmlDeclaration
Console.Write("<?xml version='1.0'?>")
Case XmlNodeType.Document
Case XmlNodeType.EndElement
Console.Write("</{0}>", reader.Name)
End Select
End While
Finally
If Not (reader Is Nothing) Then
reader.Close()
End If
End Try
End Sub
End Class
En el ejemplo se usa el archivo , items.xml
como entrada.
<?xml version="1.0"?>
<!-- This is a sample XML document -->
<!DOCTYPE Items [<!ENTITY number "123">]>
<Items>
<Item>Test with an entity: &number;</Item>
<Item>test with a child element <more/> stuff</Item>
<Item>test with a CDATA section <![CDATA[<456>]]> def</Item>
<Item>Test with a char entity: A</Item>
<!-- Fourteen chars in this element.-->
<Item>1234567890ABCD</Item>
</Items>
Comentarios
Nota
En el .NET Framework 2.0, la práctica recomendada es crear XmlReader instancias mediante la XmlReaderSettings clase y el Create método . Esto le permite aprovechar al máximo todas las nuevas características introducidas en el .NET Framework. Para obtener más información, vea la sección Comentarios de la página de XmlReader referencia.
Este método también libera los recursos mantenidos durante la lectura. Si Close
ya se ha llamado, no se realiza ninguna acción.