XmlTextReader::ReadElementContentAsBase64 Method
Reads the element and decodes the Base64 content.
Namespace: System.Xml
Assembly: System.Xml (in System.Xml.dll)
public: virtual int ReadElementContentAsBase64( array<unsigned char>^ buffer, int index, int count ) override
Parameters
- buffer
- Type: array<System::Byte>
The buffer into which to copy the resulting text. This value cannot be nullptr.
- index
- Type: System::Int32
The offset into the buffer where to start copying the result.
- count
- Type: System::Int32
The maximum number of bytes to copy into the buffer. The actual number of bytes copied is returned from this method.
| Exception | Condition |
|---|---|
| ArgumentNullException | The buffer value is nullptr. |
| InvalidOperationException | The current node is not an element node. |
| ArgumentOutOfRangeException | The index into the buffer or index + count is larger than the allocated buffer size. |
| NotSupportedException | The XmlTextReader implementation does not support this method. |
| XmlException | The element contains mixed-content. |
| FormatException | The content cannot be converted to the requested type. |
Note |
|---|
In the .NET Framework 2.0 release, the recommended practice is to create XmlReader instances using the XmlReader::Create method. This allows you to take full advantage of the new features introduced in this release. For more information, see Creating XML Readers. |
This method reads the element content, decodes it using Base64 encoding, and returns the decoded binary bytes (for example, an inline Base64 encoded GIF image) into the buffer. For more information, see RFC 1521, "MIME (Multipurpose Internet Mail Extensions) Part One: Mechanisms for Specifying and Describing the Format of Internet Message Bodies". You can obtain RFCs from the Request for Comments Web site at http://www.rfc-editor.org.
This method can only read simple-content elements. The element can contain text, white space, significant white space, CDATA sections, comments and processing instructions. It can also contain entity references, which are automatically expanded. The element cannot have child elements.
This method is very similar to the ReadContentAsBase64 method except that it can only be called on element node types.
If the count value is higher than the number of bytes in the document, or if it is equal to the number of bytes in the document, the XmlTextReader reads all the remaining bytes in the document and returns the number of bytes read. The next XmlTextReader method call returns a zero and moves the reader to the node following the EndElement.
If you call Read before all of the element content is consumed, the reader may behave as if the first content was consumed and then the Read method was called. This means that the reader reads all the text until the end element is encountered. It then reads the end tag node, reads the next node, and then positions itself on the next subsequent node.
See XmlReader::ReadElementContentAsBase64 to see an example using this method.
Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Note