XmlWriter.WriteAttributeString Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
When overridden in a derived class, writes an attribute with the specified value.
Overloads
WriteAttributeString(String, String, String, String) |
When overridden in a derived class, writes out the attribute with the specified prefix, local name, namespace URI, and value. |
WriteAttributeString(String, String, String) |
When overridden in a derived class, writes an attribute with the specified local name, namespace URI, and value. |
WriteAttributeString(String, String) |
When overridden in a derived class, writes out the attribute with the specified local name and value. |
Remarks
For the asynchronous version of this method, see WriteElementStringAsync.
WriteAttributeString(String, String, String, String)
- Source:
- XmlWriter.cs
- Source:
- XmlWriter.cs
- Source:
- XmlWriter.cs
When overridden in a derived class, writes out the attribute with the specified prefix, local name, namespace URI, and value.
public:
void WriteAttributeString(System::String ^ prefix, System::String ^ localName, System::String ^ ns, System::String ^ value);
public void WriteAttributeString (string prefix, string localName, string ns, string value);
public void WriteAttributeString (string? prefix, string localName, string? ns, string? value);
member this.WriteAttributeString : string * string * string * string -> unit
Public Sub WriteAttributeString (prefix As String, localName As String, ns As String, value As String)
Parameters
- prefix
- String
The namespace prefix of the attribute.
- localName
- String
The local name of the attribute.
- ns
- String
The namespace URI of the attribute.
- value
- String
The value of the attribute.
Exceptions
The state of writer is not WriteState.Element
or writer is closed.
-or-
An XmlWriter method was called before a previous asynchronous operation finished. In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."
The xml:space
or xml:lang
attribute value is invalid.
The localName
or ns
is null
.
Examples
The following example uses the WriteAttributeString method to write a namespace declaration.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
void main()
{
XmlWriter^ writer = nullptr;
writer = XmlWriter::Create( L"sampledata.xml" );
// Write the root element.
writer->WriteStartElement( L"book" );
// Write the xmlns:bk="urn:book" namespace declaration.
writer->WriteAttributeString( L"xmlns", L"bk", nullptr, L"urn:book" );
// Write the bk:ISBN="1-800-925" attribute.
writer->WriteAttributeString( L"ISBN", L"urn:book", L"1-800-925" );
writer->WriteElementString( L"price", L"19.95" );
// Write the close tag for the root element.
writer->WriteEndElement();
// Write the XML to file and close the writer.
writer->Flush();
writer->Close();
}
using System;
using System.IO;
using System.Xml;
public class Sample {
public static void Main() {
XmlWriter writer = null;
writer = XmlWriter.Create("sampledata.xml");
// Write the root element.
writer.WriteStartElement("book");
// Write the xmlns:bk="urn:book" namespace declaration.
writer.WriteAttributeString("xmlns","bk", null,"urn:book");
// Write the bk:ISBN="1-800-925" attribute.
writer.WriteAttributeString("ISBN", "urn:book", "1-800-925");
writer.WriteElementString("price", "19.95");
// Write the close tag for the root element.
writer.WriteEndElement();
// Write the XML to file and close the writer.
writer.Flush();
writer.Close();
}
}
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
Dim writer As XmlWriter = Nothing
writer = XmlWriter.Create("sampledata.xml")
' Write the root element.
writer.WriteStartElement("book")
' Write the xmlns:bk="urn:book" namespace declaration.
writer.WriteAttributeString("xmlns","bk", Nothing,"urn:book")
' Write the bk:ISBN="1-800-925" attribute.
writer.WriteAttributeString("ISBN", "urn:book", "1-800-925")
writer.WriteElementString("price", "19.95")
' Write the close tag for the root element.
writer.WriteEndElement()
' Write the XML to file and close the writer.
writer.Flush()
writer.Close()
End Sub
End Class
Remarks
This method writes out the attribute with a user defined namespace prefix and associates it with the given namespace. If the prefix is "xmlns" then this method also treats this as a namespace declaration and associates the declared prefix with the namespace URI provided in the given attribute value. In this case the ns
argument can be null
.
WriteAttributeString
does the following:
If the attribute value includes double or single quotes, they are replaced with
"
and'
respectively.If writing an
xml:space
attribute, the writer verifies the attribute value is valid. (Valid values arepreserve
ordefault
.)If writing an
xml:lang
attribute, the writer does not verify that the attribute value is valid according to the W3C XML 1.0 recommendation.
For the asynchronous version of this method, see WriteAttributeStringAsync.
Applies to
WriteAttributeString(String, String, String)
- Source:
- XmlWriter.cs
- Source:
- XmlWriter.cs
- Source:
- XmlWriter.cs
When overridden in a derived class, writes an attribute with the specified local name, namespace URI, and value.
public:
void WriteAttributeString(System::String ^ localName, System::String ^ ns, System::String ^ value);
public void WriteAttributeString (string localName, string ns, string value);
public void WriteAttributeString (string localName, string? ns, string? value);
member this.WriteAttributeString : string * string * string -> unit
Public Sub WriteAttributeString (localName As String, ns As String, value As String)
Parameters
- localName
- String
The local name of the attribute.
- ns
- String
The namespace URI to associate with the attribute.
- value
- String
The value of the attribute.
Exceptions
The state of writer is not WriteState.Element
or writer is closed.
-or-
An XmlWriter method was called before a previous asynchronous operation finished. In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."
The xml:space
or xml:lang
attribute value is invalid.
Examples
The following example uses the WriteAttributeString method to write a namespace declaration.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
void main()
{
XmlWriter^ writer = nullptr;
writer = XmlWriter::Create( L"sampledata.xml" );
// Write the root element.
writer->WriteStartElement( L"book" );
// Write the xmlns:bk="urn:book" namespace declaration.
writer->WriteAttributeString( L"xmlns", L"bk", nullptr, L"urn:book" );
// Write the bk:ISBN="1-800-925" attribute.
writer->WriteAttributeString( L"ISBN", L"urn:book", L"1-800-925" );
writer->WriteElementString( L"price", L"19.95" );
// Write the close tag for the root element.
writer->WriteEndElement();
// Write the XML to file and close the writer.
writer->Flush();
writer->Close();
}
using System;
using System.IO;
using System.Xml;
public class Sample {
public static void Main() {
XmlWriter writer = null;
writer = XmlWriter.Create("sampledata.xml");
// Write the root element.
writer.WriteStartElement("book");
// Write the xmlns:bk="urn:book" namespace declaration.
writer.WriteAttributeString("xmlns","bk", null,"urn:book");
// Write the bk:ISBN="1-800-925" attribute.
writer.WriteAttributeString("ISBN", "urn:book", "1-800-925");
writer.WriteElementString("price", "19.95");
// Write the close tag for the root element.
writer.WriteEndElement();
// Write the XML to file and close the writer.
writer.Flush();
writer.Close();
}
}
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
Dim writer As XmlWriter = Nothing
writer = XmlWriter.Create("sampledata.xml")
' Write the root element.
writer.WriteStartElement("book")
' Write the xmlns:bk="urn:book" namespace declaration.
writer.WriteAttributeString("xmlns","bk", Nothing,"urn:book")
' Write the bk:ISBN="1-800-925" attribute.
writer.WriteAttributeString("ISBN", "urn:book", "1-800-925")
writer.WriteElementString("price", "19.95")
' Write the close tag for the root element.
writer.WriteEndElement()
' Write the XML to file and close the writer.
writer.Flush()
writer.Close()
End Sub
End Class
Remarks
This method writes out the attribute with a user defined namespace prefix and associates it with the given namespace. If localName
is "xmlns" then this method also treats this as a namespace declaration. In this case, the ns
argument can be null
.
WriteAttributeString
does the following:
If the attribute value includes double or single quotes, they are replaced with
"
and'
respectively.If writing an
xml:space
attribute, the writer verifies the attribute value is valid. (Valid values arepreserve
ordefault
.)If writing an
xml:lang
attribute, the writer does not verify that the attribute value is valid according to the W3C XML 1.0 recommendation.
For the asynchronous version of this method, see WriteAttributeStringAsync.
Applies to
WriteAttributeString(String, String)
- Source:
- XmlWriter.cs
- Source:
- XmlWriter.cs
- Source:
- XmlWriter.cs
When overridden in a derived class, writes out the attribute with the specified local name and value.
public:
void WriteAttributeString(System::String ^ localName, System::String ^ value);
public void WriteAttributeString (string localName, string value);
public void WriteAttributeString (string localName, string? value);
member this.WriteAttributeString : string * string -> unit
Public Sub WriteAttributeString (localName As String, value As String)
Parameters
- localName
- String
The local name of the attribute.
- value
- String
The value of the attribute.
Exceptions
The state of writer is not WriteState.Element
or writer is closed.
-or-
An XmlWriter method was called before a previous asynchronous operation finished. In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."
The xml:space
or xml:lang
attribute value is invalid.
Examples
The following example writes out a book.
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
public ref class Sample
{
private:
static String^ m_Document = L"sampledata.xml";
public:
static void Main()
{
XmlWriter^ writer = nullptr;
try
{
XmlWriterSettings^ settings = gcnew XmlWriterSettings;
settings->Indent = true;
writer = XmlWriter::Create( m_Document,settings );
writer->WriteComment( L"sample XML fragment" );
// Write an element (this one is the root).
writer->WriteStartElement( L"book" );
// Write the namespace declaration.
writer->WriteAttributeString( L"xmlns", L"bk", nullptr, L"urn:samples" );
// Write the genre attribute.
writer->WriteAttributeString( L"genre", L"novel" );
// Write the title.
writer->WriteStartElement( L"title" );
writer->WriteString( L"The Handmaid's Tale" );
writer->WriteEndElement();
// Write the price.
writer->WriteElementString( L"price", L"19.95" );
// Lookup the prefix and write the ISBN element.
String^ prefix = writer->LookupPrefix( L"urn:samples" );
writer->WriteStartElement( prefix, L"ISBN", L"urn:samples" );
writer->WriteString( L"1-861003-78" );
writer->WriteEndElement();
// Write the style element (shows a different way to handle prefixes).
writer->WriteElementString( L"style", L"urn:samples", L"hardcover" );
// Write the close tag for the root element.
writer->WriteEndElement();
// Write the XML to file and close the writer.
writer->Flush();
writer->Close();
}
finally
{
if ( writer != nullptr )
writer->Close();
}
}
};
void main()
{
Sample::Main();
}
using System;
using System.IO;
using System.Xml;
public class Sample
{
private const string m_Document = "sampledata.xml";
public static void Main() {
XmlWriter writer = null;
try {
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
writer = XmlWriter.Create (m_Document, settings);
writer.WriteComment("sample XML fragment");
// Write an element (this one is the root).
writer.WriteStartElement("book");
// Write the namespace declaration.
writer.WriteAttributeString("xmlns", "bk", null, "urn:samples");
// Write the genre attribute.
writer.WriteAttributeString("genre", "novel");
// Write the title.
writer.WriteStartElement("title");
writer.WriteString("The Handmaid's Tale");
writer.WriteEndElement();
// Write the price.
writer.WriteElementString("price", "19.95");
// Lookup the prefix and write the ISBN element.
string prefix = writer.LookupPrefix("urn:samples");
writer.WriteStartElement(prefix, "ISBN", "urn:samples");
writer.WriteString("1-861003-78");
writer.WriteEndElement();
// Write the style element (shows a different way to handle prefixes).
writer.WriteElementString("style", "urn:samples", "hardcover");
// Write the close tag for the root element.
writer.WriteEndElement();
// Write the XML to file and close the writer.
writer.Flush();
writer.Close();
}
finally {
if (writer != null)
writer.Close();
}
}
}
Option Strict
Option Explicit
Imports System.IO
Imports System.Xml
Public Class Sample
Private Shared m_Document As String = "sampledata.xml"
Public Shared Sub Main()
Dim writer As XmlWriter = Nothing
Try
Dim settings As XmlWriterSettings = new XmlWriterSettings()
settings.Indent = true
writer = XmlWriter.Create (m_Document, settings)
writer.WriteComment("sample XML fragment")
' Write an element (this one is the root).
writer.WriteStartElement("book")
' Write the namespace declaration.
writer.WriteAttributeString("xmlns", "bk", Nothing, "urn:samples")
' Write the genre attribute.
writer.WriteAttributeString("genre", "novel")
' Write the title.
writer.WriteStartElement("title")
writer.WriteString("The Handmaid's Tale")
writer.WriteEndElement()
' Write the price.
writer.WriteElementString("price", "19.95")
' Lookup the prefix and write the ISBN element.
Dim prefix As String = writer.LookupPrefix("urn:samples")
writer.WriteStartElement(prefix, "ISBN", "urn:samples")
writer.WriteString("1-861003-78")
writer.WriteEndElement()
' Write the style element (shows a different way to handle prefixes).
writer.WriteElementString("style", "urn:samples", "hardcover")
' Write the close tag for the root element.
writer.WriteEndElement()
' Write the XML to file and close the writer.
writer.Flush()
writer.Close()
Finally
If Not (writer Is Nothing) Then
writer.Close()
End If
End Try
End Sub
End Class
Remarks
WriteAttributeString
does the following:
If the attribute value includes double or single quotes, they are replaced with
"
and'
respectively.If writing an
xml:space
attribute, the writer verifies the attribute value is valid. (Valid values arepreserve
ordefault
.)If writing an
xml:lang
attribute, the writer does not verify that the attribute value is valid according to the W3C XML 1.0 recommendation.
For the asynchronous version of this method, see WriteAttributeStringAsync.
Applies to
.NET