XmlWriter.WriteChars メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > XmlWriter.WriteChars メソッドの意味・解説 

XmlWriter.WriteChars メソッド

派生クラスでオーバーライドされると、一度に 1 つのバッファにテキストを書き込みます。

名前空間: System.Xml
アセンブリ: System.Xml (system.xml.dll 内)
構文構文

例外例外
例外の種類条件

ArgumentNullException

buffer が null 参照 (Visual Basic では Nothing) です。

ArgumentOutOfRangeException

index または count が 0 未満です。

または

バッファ長から index を差し引いた値が count 未満です。この呼び出しにより、サロゲート ペア文字が分割されるか、無効なサロゲート ペアが書き込まれます。

解説解説

このメソッドを使用すると、一度に 1 つのバッファに大量のテキストを書き込むことができます。

WriteChars メソッドが複数のバッファへの書き込みでサロゲート ペア文字を分割しないようにするには、特殊な処理を実行する必要があります。XML 仕様では、サロゲート ペアの有効範囲を定義しています。

サロゲート ペア文字を書き込み、その文字がバッファ内で分割された場合は、例外がスローされます。継続して次のサロゲート ペア文字を出力バッファに書き込むには、この例外をキャッチする必要があります。

ランダムに生成されたサロゲート ペア文字が出力バッファへの書き込み時に分割される例を次に示します。例外をキャッチし、継続してバッファに書き込むことにより、サロゲート ペア文字は出力ストリームに正しく書き込まれます。

 //Handling surrogate pair across buffer streams.
 char [] charArray = new char[4];
 char lowChar, highChar;
 Random random = new Random();
 lowChar = Convert.ToChar(random.Next(0xDC01, 0xDFFF));
 highChar = Convert.ToChar(random.Next(0xD801, 0xDBFF));
 XmlTextWriter tw = new XmlTextWriter("test.xml", null);
 tw.WriteStartElement("Root");
 charArray[0] = 'a';
 charArray[1] = 'b';
 charArray[2] = 'c';
 charArray[3] = highChar;
 try
 {
  tw. WriteChars(charArray, 0, charArray.Length);
 }
 catch (Exception ex) {
 }
 Array[0] = highChar;
 Array[1] = lowChar;
 charArray[2] = 'd';
 tw.WriteChars(charArray, 0, 3); 
 tw.WriteEndElement();
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

XmlWriter.WriteChars メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



XmlWriter.WriteChars メソッドのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS