XmlWriter.WriteStartElement 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
当在派生类中被重写时,写入指定的开始标记。
重载
WriteStartElement(String) |
当在派生类中被重写时,写出具有指定的本地名称的开始标记。 |
WriteStartElement(String, String) |
当在派生类中被重写时,写入指定的开始标记并将其与给定的命名空间关联起来。 |
WriteStartElement(String, String, String) |
当在派生类中被重写时,写入指定的开始标记并将其与给定的命名空间和前缀关联起来。 |
注解
有关此方法的异步版本,请参阅 WriteStartElementAsync。
WriteStartElement(String)
- Source:
- XmlWriter.cs
- Source:
- XmlWriter.cs
- Source:
- XmlWriter.cs
当在派生类中被重写时,写出具有指定的本地名称的开始标记。
public:
void WriteStartElement(System::String ^ localName);
public void WriteStartElement (string localName);
member this.WriteStartElement : string -> unit
Public Sub WriteStartElement (localName As String)
参数
- localName
- String
元素的本地名称。
例外
缓冲区中有一个字符是有效的 XML 字符,但对于输出编码是无效的。 例如,如果输出编码为 ASCII,应该仅对元素和特性名使用从 0 到 127 范围内的字符。 无效的字符可能位于此方法的参数中,或者位于以前要写入缓冲区的方法的参数中。 如果可能,此类字符将使用字符实体引用进行转义(例如,在文本节点或特性值中)。 但是,不允许在元素名、特性名、注释、处理指令和 CDATA 节中使用字符实体引用。
示例
以下示例写入一个 XML 节点。
#using <System.Xml.dll>
using namespace System;
using namespace System::IO;
using namespace System::Xml;
int main()
{
// Create a writer to write XML to the console.
XmlWriterSettings^ settings = gcnew XmlWriterSettings;
settings->Indent = true;
settings->OmitXmlDeclaration = true;
XmlWriter^ writer = XmlWriter::Create( Console::Out, settings );
// Write the book element.
writer->WriteStartElement( L"book" );
// Write the title element.
writer->WriteStartElement( L"title" );
writer->WriteString( L"Pride And Prejudice" );
writer->WriteEndElement();
// Write the close tag for the root element.
writer->WriteEndElement();
// Write the XML and close the writer.
writer->Close();
return 1;
}
using System;
using System.IO;
using System.Xml;
public class Sample {
public static void Main() {
// Create a writer to write XML to the console.
XmlWriterSettings settings = new XmlWriterSettings();
settings.Indent = true;
settings.OmitXmlDeclaration = true;
XmlWriter writer = XmlWriter.Create(Console.Out, settings);
// Write the book element.
writer.WriteStartElement("book");
// Write the title element.
writer.WriteStartElement("title");
writer.WriteString("Pride And Prejudice");
writer.WriteEndElement();
// Write the close tag for the root element.
writer.WriteEndElement();
// Write the XML and close the writer.
writer.Close();
}
}
Option Explicit
Option Strict
Imports System.IO
Imports System.Xml
Public Class Sample
Public Shared Sub Main()
' Create a writer to write XML to the console.
Dim settings As XmlWriterSettings = new XmlWriterSettings()
settings.Indent = true
settings.OmitXmlDeclaration = true
Dim writer As XmlWriter = XmlWriter.Create(Console.Out, settings)
' Write the book element.
writer.WriteStartElement("book")
' Write the title element.
writer.WriteStartElement("title")
writer.WriteString("Pride And Prejudice")
writer.WriteEndElement()
' Write the close tag for the root element.
writer.WriteEndElement()
' Write the XML and close the writer.
writer.Close()
End Sub
End Class
注解
有关此方法的异步版本,请参阅 WriteStartElementAsync。
适用于
WriteStartElement(String, String)
- Source:
- XmlWriter.cs
- Source:
- XmlWriter.cs
- Source:
- XmlWriter.cs
当在派生类中被重写时,写入指定的开始标记并将其与给定的命名空间关联起来。
public:
void WriteStartElement(System::String ^ localName, System::String ^ ns);
public void WriteStartElement (string localName, string ns);
public void WriteStartElement (string localName, string? ns);
member this.WriteStartElement : string * string -> unit
Public Sub WriteStartElement (localName As String, ns As String)
参数
- localName
- String
元素的本地名称。
- ns
- String
与元素关联的命名空间 URI。 如果此命名空间已在范围中并具有关联的前缀,则写入器也将自动写入该前缀。
例外
缓冲区中有一个字符是有效的 XML 字符,但对于输出编码是无效的。 例如,如果输出编码为 ASCII,应该仅对元素和特性名使用从 0 到 127 范围内的字符。 无效的字符可能位于此方法的参数中,或者位于以前要写入缓冲区的方法的参数中。 如果可能,此类字符将使用字符实体引用进行转义(例如,在文本节点或特性值中)。 但是,不允许在元素名、特性名、注释、处理指令和 CDATA 节中使用字符实体引用。
注解
调用此方法后,可以编写属性,或使用 、 WriteString或 WriteStartElement
为子元素创建内容WriteComment。 可以使用 或 WriteFullEndElement关闭 元素WriteEndElement。 例如,以下 C# 代码:
writer.WriteStartElement("item",null);
writer.WriteString("some text");
writer.WriteEndElement();
生成以下输出:
<item>some text</item>
有关此方法的异步版本,请参阅 WriteStartElementAsync。
适用于
WriteStartElement(String, String, String)
- Source:
- XmlWriter.cs
- Source:
- XmlWriter.cs
- Source:
- XmlWriter.cs
当在派生类中被重写时,写入指定的开始标记并将其与给定的命名空间和前缀关联起来。
public:
abstract void WriteStartElement(System::String ^ prefix, System::String ^ localName, System::String ^ ns);
public abstract void WriteStartElement (string prefix, string localName, string ns);
public abstract void WriteStartElement (string? prefix, string localName, string? ns);
abstract member WriteStartElement : string * string * string -> unit
Public MustOverride Sub WriteStartElement (prefix As String, localName As String, ns As String)
参数
- prefix
- String
元素的命名空间前缀。
- localName
- String
元素的本地名称。
- ns
- String
与元素关联的命名空间 URI。
例外
缓冲区中有一个字符是有效的 XML 字符,但对于输出编码是无效的。 例如,如果输出编码为 ASCII,应该仅对元素和特性名使用从 0 到 127 范围内的字符。 无效的字符可能位于此方法的参数中,或者位于以前要写入缓冲区的方法的参数中。 如果可能,此类字符将使用字符实体引用进行转义(例如,在文本节点或特性值中)。 但是,不允许在元素名、特性名、注释、处理指令和 CDATA 节中使用字符实体引用。
示例
以下示例写出一个 XML 片段。
#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
注解
有关此方法的异步版本,请参阅 WriteStartElementAsync。