IBinarySerialize.Read(BinaryReader) Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Generuje uživatelem definovaný typ (UDT) nebo uživatelem definované agregace z jeho binární formy.
public:
void Read(System::IO::BinaryReader ^ r);
public void Read (System.IO.BinaryReader r);
abstract member Read : System.IO.BinaryReader -> unit
Public Sub Read (r As BinaryReader)
Parametry
Proud BinaryReader, ze kterého je objekt deserializován.
Příklady
Následující příklad ukazuje implementaci Read metody UDT, která používá BinaryReader k de-serializaci dříve trvalé UDT. Tento příklad předpokládá, že UDT má dvě vlastnosti dat: StringValue
a DoubleValue
.
// The binary layout is as follows:
// Bytes 0 - 19: string text, padded to the right with null characters
// Bytes 20+: Double value
// using Microsoft.SqlServer.Server;
public void Read(System.IO.BinaryReader r)
{
int maxStringSize = 20;
char[] chars;
int stringEnd;
string stringValue;
double doubleValue;
// Read the characters from the binary stream.
chars = r.ReadChars(maxStringSize);
// Find the start of the null character padding.
stringEnd = Array.IndexOf(chars, '\0');
if (stringEnd == 0)
{
stringValue = null;
return;
}
// Build the string from the array of characters.
stringValue = new String(chars, 0, stringEnd);
// Read the double value from the binary stream.
doubleValue = r.ReadDouble();
// Set the object's properties equal to the values.
this.StringValue = stringValue;
this.DoubleValue = doubleValue;
}
Poznámky
Metoda Read musí objekt rekonstituovat pomocí informací, které metoda napsala Write .