XmlWriter.WriteBinHex(Byte[], Int32, Int32) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Wanneer deze wordt overschreven in een afgeleide klasse, codeert u de opgegeven binaire bytes als BinHex en schrijft u de resulterende tekst uit.
public:
virtual void WriteBinHex(cli::array <System::Byte> ^ buffer, int index, int count);
public:
abstract void WriteBinHex(cli::array <System::Byte> ^ buffer, int index, int count);
public virtual void WriteBinHex(byte[] buffer, int index, int count);
public abstract void WriteBinHex(byte[] buffer, int index, int count);
abstract member WriteBinHex : byte[] * int * int -> unit
override this.WriteBinHex : byte[] * int * int -> unit
abstract member WriteBinHex : byte[] * int * int -> unit
Public Overridable Sub WriteBinHex (buffer As Byte(), index As Integer, count As Integer)
Public MustOverride Sub WriteBinHex (buffer As Byte(), index As Integer, count As Integer)
Parameters
- buffer
- Byte[]
Bytematrix om te coderen.
- index
- Int32
De positie in de buffer die het begin van de te schrijven bytes aangeeft.
- count
- Int32
Het aantal te schrijven bytes.
Uitzonderingen
buffer is null.
De schrijver is gesloten of heeft een foutstatus. – of –
Er XmlWriter is een methode aangeroepen voordat een vorige asynchrone bewerking is voltooid. In dit geval InvalidOperationException wordt het bericht 'Er wordt al een asynchrone bewerking uitgevoerd'.
index of count kleiner is dan nul.
– of –
De bufferlengte min index is kleiner dan count.
Voorbeelden
In het volgende voorbeeld wordt de WriteBinHex methode gebruikt om gegevens te schrijven BinHex . De BinHex gegevens worden ingesloten in een <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();
}
}
Public Shared Sub BinHexEncodeImageFile()
Dim bufferSize As Integer = 1000
Dim buffer(bufferSize) As Byte
Dim readBytes As Integer = 0
Using writer As XmlWriter = XmlWriter.Create("output.xml")
Dim inputFile As New FileStream("C:\artFiles\sunset.jpg", FileMode.OpenOrCreate, FileAccess.Read, FileShare.Read)
writer.WriteStartDocument()
writer.WriteStartElement("image")
Dim br As New BinaryReader(inputFile)
Console.WriteLine(vbCr + vbLf + "Writing BinHex data...")
Do
readBytes = br.Read(buffer, 0, bufferSize)
writer.WriteBinHex(buffer, 0, readBytes)
Loop While bufferSize <= readBytes
br.Close()
writer.WriteEndElement() ' </image>
writer.WriteEndDocument()
End Using
End Sub
Opmerkingen
Zie voor de asynchrone versie van deze methode WriteBinHexAsync.