IFragmentCapableXmlDictionaryWriter.WriteFragment Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Yazıcının temel alınan akışına bir XML parçası yazar.
public:
void WriteFragment(cli::array <System::Byte> ^ buffer, int offset, int count);
public void WriteFragment (byte[] buffer, int offset, int count);
abstract member WriteFragment : byte[] * int * int -> unit
Public Sub WriteFragment (buffer As Byte(), offset As Integer, count As Integer)
Parametreler
- buffer
- Byte[]
Yazacak arabellek.
- offset
- Int32
içinde yazıldığı buffer
başlangıç konumu.
- count
- Int32
öğesine yazılacak buffer
bayt sayısı.
Örnekler
MemoryStream stream = new MemoryStream();
MemoryStream fragmentStream = new MemoryStream();
XmlDictionaryWriter writer = XmlDictionaryWriter.CreateTextWriter(stream);
IXmlFragmentCapableXmlDictionaryWriter fragmentWriter = writer as IXmlFragmentCapableXmlDictionaryWriter;
if (fragmentWriter == null || !fragmentWriter.CanFragment)
{
Console.WriteLine("This writer doesn't support fragments");
return;
}
writer.WriteStartElement("Root");
fragmentWriter.StartFragment(fragmentStream, false);
writer.WriteStartElement("Body");
writer.WriteString("This is my body");
writer.WriteEndElement();
fragmentWriter.EndFragment();
writer.WriteStartElement("CharsInTheBody");
writer.WriteValue(fragmentStream.Length);
writer.WriteEndElement();
fragmentWriter.WriteFragment(fragmentStream.GetBuffer(), 0, (int)fragmentStream.Length);
writer.WriteEndElement(); // Root
Açıklamalar
ve EndFragment
arasında StartFragment
yakalanan bir parça yazar ve XmlDictionaryWriter'ın ana akışına geri çağrılar. Yazılan parça, sağlanan buffer
dizininden offset
başlayan bayttırcount
. Sağlanan parça bu yazıcı örneği kullanılarak yakalanmadıysa davranış tanımlanmamıştır.