Export (0) Print
Expand All

XmlWriter.WriteBinHex Method

When overridden in a derived class, encodes the specified binary bytes as BinHex and writes out the resulting text.

Namespace:  System.Xml
Assemblies:   System.Xml (in System.Xml.dll)
  System.Xml.ReaderWriter (in System.Xml.ReaderWriter.dll)

public virtual void WriteBinHex(
	byte[] buffer,
	int index,
	int count
)

Parameters

buffer
Type: System.Byte[]

Byte array to encode.

index
Type: System.Int32

The position in the buffer indicating the start of the bytes to write.

count
Type: System.Int32

The number of bytes to write.

ExceptionCondition
ArgumentNullException

buffer is null.

InvalidOperationException

The writer is closed or in error state.

ArgumentOutOfRangeException

index or count is less than zero.

-or-

The buffer length minus index is less than count.

InvalidOperationException

An XmlWriter method was called before a previous asynchronous operation finished. In this case, InvalidOperationException is thrown with the message “An asynchronous operation is already in progress.”

For the asynchronous version of this method, see WriteBinHexAsync.

The following example uses the WriteBinHex method to write BinHex data. The BinHex data is embedded within an <image> element.


public static void BinHexEncodeImageFile() {

  int bufferSize = 1000;
  byte[] buffer = new byte[bufferSize];
  int readBytes = 0;
	
  using (XmlWriter writer = XmlWriter.Create("output.xml")) {
       FileStream inputFile = new FileStream(@"C:\artFiles\sunset.jpg", FileMode.OpenOrCreate, 
                                                                    FileAccess.Read, FileShare.Read);
       writer.WriteStartDocument();
       writer.WriteStartElement("image");
       BinaryReader br = new BinaryReader(inputFile);
       Console.WriteLine("\r\nWriting BinHex data...");

       do {
          readBytes = br.Read(buffer, 0, bufferSize);
          writer.WriteBinHex(buffer, 0, readBytes);
       } while (bufferSize <= readBytes);
       br.Close();

    writer.WriteEndElement();// </image>
    writer.WriteEndDocument();
		
  }
}

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0

.NET for Windows Phone apps

Supported in: Windows Phone 8.1, Windows Phone Silverlight 8.1, Windows Phone Silverlight 8

Portable Class Library

Supported in: Portable Class Library
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback
Show:
© 2015 Microsoft