XmlWriter.WriteAttributeString メソッド (String, String, String)
派生クラスでオーバーライドされると、指定したローカル名、名前空間 URI、および値の属性を書き込みます。
Overloads Public Sub WriteAttributeString( _
ByVal localName As String, _ ByVal ns As String, _ ByVal value As String _)
[C#]
public void WriteAttributeString(stringlocalName,stringns,stringvalue);
[C++]
public: void WriteAttributeString(String* localName,String* ns,String* value);
[JScript]
public function WriteAttributeString(
localName : String,ns : String,value : String);
パラメータ
- localName
属性のローカル名。 - ns
属性に関連付ける名前空間 URI。 - value
属性の値。
例外
例外の種類 | 条件 |
---|---|
InvalidOperationException | ライタの状態が WriteState.Element でないか、ライタが閉じられています。 |
ArgumentException | xml:space 属性値または xml:lang 属性値が無効です。 |
解説
このメソッドは、ユーザー定義の名前空間プリフィックスを持つ属性を書き込み、指定した名前空間に関連付けます。 localName が "xmlns" の場合、このメソッドはこれも名前空間宣言として扱います。この場合、 ns 引数は null 参照 (Visual Basic では Nothing) でもかまいません。
WriteAttributeString は次の処理を実行します。
- 属性値に二重引用符または単一引用符が含まれている場合は、それぞれ " と ' に置き換えられます。
- xml:space 属性を書き込んでいる場合、ライタは、属性値が有効であることを検査します。有効な値は、preserve または default です。
- xml:lang 属性を書き込んでいる場合、ライタは、属性値が W3C 勧告『XML 1.0』に準拠して有効であることを検査しません。
使用例
[Visual Basic, C#, C++] XML スキーマ定義言語 (XSD) スキーマの一部を書き込む例を次に示します。
Option Explicit
Option Strict
Imports System
Imports System.IO
Imports System.Xml
Public Class Sample
Private Shared filename As String = "sampledata.xml"
Public Shared Sub Main()
Dim writer As XmlTextWriter = Nothing
writer = New XmlTextWriter(filename, Nothing)
' Use indenting for readability.
writer.Formatting = Formatting.Indented
' Write the root element.
writer.WriteStartElement("schema")
' Write the namespace declarations.
writer.WriteAttributeString("xmlns", Nothing, "http://www.w3.org/2001/XMLSchema")
writer.WriteAttributeString("xmlns", "po", Nothing, "https://contoso.com/po")
writer.WriteStartElement("element")
writer.WriteAttributeString("name", "purchaseOrder")
' Write the type attribute.
writer.WriteStartAttribute(Nothing, "type", Nothing)
writer.WriteQualifiedName("PurchaseOrder", "https://contoso.com/po")
writer.WriteEndAttribute()
writer.WriteEndElement()
' Write the close tag for the root element.
writer.WriteEndElement()
' Write the XML to file and close the writer.
writer.Flush()
writer.Close()
' Read the file back in and parse to ensure well formed XML.
Dim doc As New XmlDocument()
' Preserve white space for readability.
doc.PreserveWhitespace = True
' Load the file.
doc.Load(filename)
' Write the XML content to the console.
Console.Write(doc.InnerXml)
End Sub 'Main
End Class 'Sample
[C#]
using System;
using System.IO;
using System.Xml;
public class Sample
{
private const string filename = "sampledata.xml";
public static void Main()
{
XmlTextWriter writer = null;
writer = new XmlTextWriter (filename, null);
// Use indenting for readability.
writer.Formatting = Formatting.Indented;
// Write the root element.
writer.WriteStartElement("schema");
// Write the namespace declarations.
writer.WriteAttributeString("xmlns", null,"http://www.w3.org/2001/XMLSchema");
writer.WriteAttributeString("xmlns","po",null,"https://contoso.com/po");
writer.WriteStartElement("element");
writer.WriteAttributeString("name", "purchaseOrder");
// Write the type attribute.
writer.WriteStartAttribute(null,"type", null);
writer.WriteQualifiedName("PurchaseOrder", "https://contoso.com/po");
writer.WriteEndAttribute();
writer.WriteEndElement();
// Write the close tag for the root element.
writer.WriteEndElement();
// Write the XML to file and close the writer.
writer.Flush();
writer.Close();
// Read the file back in and parse to ensure well formed XML.
XmlDocument doc = new XmlDocument();
// Preserve white space for readability.
doc.PreserveWhitespace = true;
// Load the file.
doc.Load(filename);
// Write the XML content to the console.
Console.Write(doc.InnerXml);
}
}
[C++]
#using <mscorlib.dll>
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
XmlTextWriter* writer = 0;
String* filename = S"sampledata.xml";
writer = new XmlTextWriter (filename, 0);
// Use indenting for readability.
writer->Formatting = Formatting::Indented;
// Write the root element.
writer->WriteStartElement(S"schema");
// Write the namespace declarations.
writer->WriteAttributeString(S"xmlns", 0,S"http://www.w3.org/2001/XMLSchema");
writer->WriteAttributeString(S"xmlns",S"po",0,S"https://contoso.com/po");
writer->WriteStartElement(S"element");
writer->WriteAttributeString(S"name", S"purchaseOrder");
// Write the type attribute.
writer->WriteStartAttribute(0,S"type", 0);
writer->WriteQualifiedName(S"PurchaseOrder", S"https://contoso.com/po");
writer->WriteEndAttribute();
writer->WriteEndElement();
// Write the close tag for the root element.
writer->WriteEndElement();
// Write the XML to file and close the writer.
writer->Flush();
writer->Close();
// Read the file back in and parse to ensure well formed XML.
XmlDocument* doc = new XmlDocument();
// Preserve white space for readability.
doc->PreserveWhitespace = true;
// Load the file.
doc->Load(filename);
// Write the XML content to the console.
Console::Write(doc->InnerXml);
}
[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
参照
XmlWriter クラス | XmlWriter メンバ | System.Xml 名前空間 | XmlWriter.WriteAttributeString オーバーロードの一覧