XmlTextWriter.WriteChars メソッド
アセンブリ: System.Xml (system.xml.dll 内)

Dim instance As XmlTextWriter Dim buffer As Char() Dim index As Integer Dim count As Integer instance.WriteChars(buffer, index, count)


![]() |
---|
Microsoft .NET Framework version 2.0 リリースでは、System.Xml.XmlWriter.Create メソッドと XmlWriterSettings クラスを使用して XmlWriter インスタンスを作成することをお勧めします。これにより、このリリースで導入されたすべての新機能を十分に活用できます。詳細については、「XML ライタの作成」を参照してください。 |
このメソッドを使用すると、一度に 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();

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。


Weblioに収録されているすべての辞書からXmlTextWriter.WriteChars メソッドを検索する場合は、下記のリンクをクリックしてください。

- XmlTextWriter.WriteChars メソッドのページへのリンク