XmlWriter.WriteString(String) Метод

Определение

Записывает заданное текстовое содержимое при переопределении в производном классе.When overridden in a derived class, writes the given text content.

public:
 abstract void WriteString(System::String ^ text);
public abstract void WriteString (string text);
abstract member WriteString : string -> unit
Public MustOverride Sub WriteString (text As String)

Параметры

text
String

Текст для записи.The text to write.

Исключения

Строка текста содержит недопустимую пару символов-заместителей.The text string contains an invalid surrogate pair.

Метод XmlWriter вызван перед завершением предыдущей асинхронной операции.An XmlWriter method was called before a previous asynchronous operation finished. В этом случае возникает исключение InvalidOperationException с сообщением "Асинхронная операция уже выполняется".In this case, InvalidOperationException is thrown with the message "An asynchronous operation is already in progress."

Примеры

В следующем примере записывается XML-узел.The following example writes an XML node.

#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

Комментарии

Метод WriteString выполняет следующие действия.WriteString does the following:

  • Символы &, <и > заменяются &amp;, &lt;и &gt;соответственно.The characters &, <, and > are replaced with &amp;, &lt;, and &gt;, respectively.

  • Поведением по умолчанию XmlWriter, созданных с помощью Create, является создание ArgumentException при попытке записи символьных значений в диапазоне 0x-0x1F (без символов пробелов 0x9, 0xA и 0xD).The default behavior of an XmlWriter created using Create is to throw an ArgumentException when attempting to write character values in the range 0x-0x1F (excluding white space characters 0x9, 0xA, and 0xD). Эти недопустимые символы XML могут быть записаны путем создания XmlWriter со свойством CheckCharacters, для которого задано значение false.These invalid XML characters can be written by creating the XmlWriter with the CheckCharacters property set to false. Это приведет к замене символов на сущности числовых символов (&#0; до & #0x1F).Doing so will result in the characters being replaced with numeric character entities (&#0; through &#0x1F). Кроме того, XmlTextWriter, созданный с помощью оператора new, по умолчанию заменит недопустимые символы на сущности с числовыми символами.Additionally, an XmlTextWriter created with the new operator will replace the invalid characters with numeric character entities by default.

Примечание . Корпорация Майкрософт не рекомендует писать недопустимые символы XML, так как многие приложения, использующие XML, не предназначены для обработки недопустимых символов.Note Microsoft does not encourage the practice of writing invalid XML characters since many applications that consume XML are not designed to handle invalid characters.

  • Если WriteString вызывается в контексте значения атрибута, то двойные и одинарные кавычки заменяются на &quot; и &apos; соответственно.If WriteString is called in the context of an attribute value, double and single quotes are replaced with &quot; and &apos; respectively.

Например, эта входная строка test<item>test записывается какFor example, this input string test<item>test is written out as

test&lt;item&gt;test  

Если text имеет значение null или String.Empty, этот метод записывает текстовый узел без содержимого данных.If text is either null or String.Empty, this method writes a text node with no data content.

Асинхронную версию этого метода см. в разделе WriteStringAsync.For the asynchronous version of this method, see WriteStringAsync.

Применяется к