XmlWriter.WriteString(String) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Записывает заданное текстовое содержимое при переопределении в производном классе.
public:
abstract void WriteString(System::String ^ text);
public abstract void WriteString (string text);
public abstract void WriteString (string? text);
abstract member WriteString : string -> unit
Public MustOverride Sub WriteString (text As String)
Параметры
- text
- String
Текст для записи.
Исключения
Строка текста содержит недопустимую пару символов-заместителей.
Метод XmlWriter вызван перед завершением предыдущей асинхронной операции. В этом случае возникает исключение InvalidOperationException с сообщением "Асинхронная операция уже выполняется".
Примеры
В следующем примере выполняется запись УЗЛА 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
Комментарии
Метод WriteString
выполняет следующие действия.
Символы
&
,<
и>
заменяются&
на ,<
и>
соответственно.По умолчанию XmlWriter при создании с помощью Create создается ArgumentException исключение при попытке записать символьные значения в диапазоне от 0x до 0x1F (за исключением пробелов, 0x9, 0xA и 0xD). Эти недопустимые XML-символы можно записать путем создания XmlWriter с свойством CheckCharacters , для свойства , заданного в
false
значение . Это приведет к замене символов на сущности числовых символов (� по �x1F). Кроме того, созданный XmlTextWriter с помощью оператора по умолчаниюnew
заменит недопустимые символы на сущности числовых символов.
Примечание Корпорация Майкрософт не рекомендует создавать недопустимые XML-символы, так как многие приложения, использующие XML, не предназначены для обработки недопустимых символов.
- Если
WriteString
вызывается в контексте значения атрибута, двойные и одинарные кавычки заменяются"
на и'
соответственно.
Например, эта входная строка test<item>test
записывается как
test<item>test
Если text
имеет значение null
или String.Empty
, этот метод записывает текстовый узел без содержимого данных.
Асинхронную версию этого метода см. в разделе WriteStringAsync.