IBinarySerialize.Write(BinaryWriter) 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í.
Převede uživatelem definovaný typ (UDT) nebo uživatelem definovanou agregaci do binárního formátu tak, aby mohly být trvale zachovány.
public:
void Write(System::IO::BinaryWriter ^ w);
public void Write (System.IO.BinaryWriter w);
abstract member Write : System.IO.BinaryWriter -> unit
Public Sub Write (w As BinaryWriter)
Parametry
Datový BinaryWriter proud, do kterého je UDT nebo uživatelem definovaná agregace serializována.
Příklady
Následující příklad ukazuje implementaci Write metody UDT, která používá BinaryWriter k serializaci UDT v uživatelem definovaném binárním formátu. Účelem odsazení znaků null je zajistit, že hodnota řetězce je zcela oddělena od dvojité hodnoty, takže jeden UDT je porovnán s jinou v transact-SQL kódu, řetězcové bajty jsou porovnány s řetězcovými bajty a dvojité bajty jsou porovnány s dvojitými bajty.
// 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 Write(System.IO.BinaryWriter w)
{
int maxStringSize = 20;
string stringValue = "The value of PI: ";
string paddedString;
double value = 3.14159;
// Pad the string from the right with null characters.
paddedString = stringValue.PadRight(maxStringSize, '\0');
// Write the string value one byte at a time.
for (int i = 0; i < paddedString.Length; i++)
{
w.Write(paddedString[i]);
}
// Write the double value.
w.Write(value);
}
Poznámky
Zapište do binárního streamu dostatek informací, aby metoda mohla Read rekonstituovat UDT nebo uživatelem definovanou agregaci.