XmlWriter.WriteAttributes メソッド
アセンブリ: System.Xml (system.xml.dll 内)

Dim instance As XmlWriter Dim reader As XmlReader Dim defattr As Boolean instance.WriteAttributes(reader, defattr)


リーダーが element ノードに配置されている場合、WriteAttributes は、格納されているすべての属性をコピーします。リーダーが attribute ノードに配置されている場合、このメソッドは、現在の属性を書き込み、次に残りの属性を要素の終了タグまで書き込みます。リーダーが XmlDeclaration ノードに配置されている場合、このメソッドは、宣言内のすべての属性を書き込みます。リーダーが他のノード型に配置されている場合、このメソッドは XmlException をスローします。
整形式の XML を確認するために、XmlValidatingReader を使用してこのメソッドを呼び出すと、無効なドキュメントになる可能性がある内容 (エンティティから展開された内容) は、書き込み時に置き換えられます。たとえば、展開された > エンティティが属性に含まれている場合、整形式のドキュメントを確認するために、展開された > は、書き込み時に > に置き換えられます。

すべての要素を出力にコピーし、タグ名を大文字に変更し、変更されていない属性をすべてコピーする例を次に示します。
Option Strict Option Explicit Imports System Imports System.IO Imports System.Xml Public Class Sample Public Shared Sub Main() Dim reader As XmlReader = XmlReader.Create("test1.xml") Dim settings As XmlWriterSettings = new XmlWriterSettings() settings.Indent = true Dim writer As XmlWriter = XmlWriter.Create(Console.Out) While reader.Read() If reader.NodeType = XmlNodeType.Element Then writer.WriteStartElement(reader.Name.ToUpper()) writer.WriteAttributes(reader, False) If reader.IsEmptyElement Then writer.WriteEndElement() End If Else If reader.NodeType = XmlNodeType.EndElement Then writer.WriteEndElement() End If End If End While writer.Close() reader.Close() End Sub 'Main End Class 'Sample
using System; using System.IO; using System.Xml; public class Sample { public static void Main() { XmlReader reader = XmlReader.Create("test1.xml"); XmlWriterSettings settings = new XmlWriterSettings(); settings.Indent = true; XmlWriter writer = XmlWriter.Create(Console.Out); while (reader.Read()) { if (reader.NodeType == XmlNodeType.Element) { writer.WriteStartElement(reader.Name.ToUpper()); writer.WriteAttributes(reader, false); if (reader.IsEmptyElement) writer.WriteEndElement(); } else if (reader.NodeType == XmlNodeType.EndElement) { writer.WriteEndElement(); } } writer.Close(); reader.Close(); } }
#using <System.Xml.dll> using namespace System; using namespace System::IO; using namespace System::Xml; void main() { XmlReader^ reader = XmlReader::Create( L"test1.xml" ); XmlWriterSettings^ settings = gcnew XmlWriterSettings; settings->Indent = true; XmlWriter^ writer = XmlWriter::Create( Console::Out ); while ( reader->Read() ) { if ( reader->NodeType == XmlNodeType::Element ) { writer->WriteStartElement( reader->Name->ToUpper() ); writer->WriteAttributes( reader, false ); if ( reader->IsEmptyElement ) writer->WriteEndElement(); } else if ( reader->NodeType == XmlNodeType::EndElement ) { writer->WriteEndElement(); } } writer->Close(); reader->Close(); }

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からXmlWriter.WriteAttributes メソッドを検索する場合は、下記のリンクをクリックしてください。

- XmlWriter.WriteAttributes メソッドのページへのリンク