XmlWriterSettings.Encoding XmlWriterSettings.Encoding XmlWriterSettings.Encoding XmlWriterSettings.Encoding Property

定義

使用するテキスト エンコーディングの種類を取得または設定します。 Gets or sets the type of text encoding to use.

public:
 property System::Text::Encoding ^ Encoding { System::Text::Encoding ^ get(); void set(System::Text::Encoding ^ value); };
public System.Text.Encoding Encoding { get; set; }
member this.Encoding : System.Text.Encoding with get, set
Public Property Encoding As Encoding
プロパティ値

使用するテキスト エンコーディング。 The text encoding to use. 既定値は、Encoding.UTF8 です。 The default is Encoding.UTF8.

次の例では、メモリ ストリームを XML フラグメントを書き込みます。The following example writes an XML fragment to a memory stream.

XmlWriterSettings settings = new XmlWriterSettings();
settings.OmitXmlDeclaration = true;
settings.ConformanceLevel = ConformanceLevel.Fragment;
settings.CloseOutput = false;

// Create the XmlWriter object and write some content.
MemoryStream strm = new MemoryStream();
XmlWriter writer = XmlWriter.Create(strm, settings);
writer.WriteElementString("orderID", "1-456-ab");
writer.WriteElementString("orderID", "2-36-00a");
writer.Flush();
writer.Close();

// Do additonal processing on the stream.
Dim settings As XmlWriterSettings = New XmlWriterSettings()
settings.OmitXmlDeclaration = true
settings.ConformanceLevel = ConformanceLevel.Fragment
settings.CloseOutput = false

' Create the XmlWriter object and write some content.
Dim strm as MemoryStream = new MemoryStream()
Dim writer As XmlWriter = XmlWriter.Create(strm, settings)
writer.WriteElementString("orderID", "1-456-ab")
writer.WriteElementString("orderID", "2-36-00a")
writer.Flush()
writer.Close()

' Do additonal processing on the stream.

注釈

XmlWriter一度にすべてではなく 1 文字ずつ文字のバッファーをエンコードします。The XmlWriter encodes a buffer of characters all at once, rather than character by character. 例外がスローされます、Flushエンコード エラーが発生した場合、メソッドが呼び出されます。An exception is thrown when the Flush method is called if any encoding errors are encountered.

Encodingプロパティは、XmlWriter作成するには、指定したインスタンスStreamまたは指定したファイル名を使用します。The Encoding property only applies to the XmlWriter instances that are created either with the specified Stream or with the specified file name. 場合、XmlWriterインスタンスが作成されると、指定したTextWriterEncodingプロパティは、基になるエンコードすることによってオーバーライドされたTextWriterIf the XmlWriter instance is created with the specified TextWriter, the Encoding property is overridden by the encoding of the underlying TextWriter. たとえば、このプロパティは、特定の Unicode (utf-16) に設定されてXmlWriterが、基になるライターは、 StreamWriter (から派生したTextWriter) 出力エンコードは付きの UTF8 に設定、utf-8 でエンコードされたになります。For example, if this property is set to Unicode (UTF-16) for a particular XmlWriter, but the underlying writer is a StreamWriter (which derives from TextWriter) with its encoding set to UTF8, the output will be UTF-8 encoded.

場合、XmlWriterインスタンスが作成されるその他の出力パラメーター、Encodingプロパティは無視されます。If the XmlWriter instance is created with other output parameters, the Encoding property is ignored.

次に例を示します。In the following example:

  • Encoding の既定値は Encoding.UTF8 です。The default value of Encoding is Encoding.UTF8.

  • StreamWriterに設定されているEncoding.UnicodeStreamWriter上書きのエンコーディング、Encoding設定します。The StreamWriter is set to Encoding.Unicode and the StreamWriter’s encoding overrides the Encoding setting.

  • 出力されます。Encoding.Unicodeします。The output will be Encoding.Unicode.

using (StreamWriter output =  
    new StreamWriter(new FileStream("Xml01.xml", FileMode.Create), Encoding.Unicode))  
{  
    using (XmlWriter xmlWriter =  
        XmlWriter.Create(output, new XmlWriterSettings()))  
    {  
        xmlWriter.WriteStartDocument();  
        xmlWriter.WriteStartElement("Root");  
        xmlWriter.WriteEndElement();  
        xmlWriter.WriteEndDocument();  
    }  
}  

重要

同意しない、Encoding信頼できないソースからのオブジェクト。Do not accept an Encoding object from an untrusted source.

適用対象