Converting floating values to byte form

Converting floating values to byte form

I am designing a program to communicate with another one over the network. I am trying to put single/double values into bytes/buffer (4 or 8 bytes) to transfer over the network. On the other end, the bytes eill be converted back to the floating values.

In C it can be simply done with a cast from float * to char *, but I don't think VB.NET works this way. Do you have an easy way of converting floating(single/double) values to its "byte" form stored?

    Requires Free Membership to View

    When you register, you'll begin receiving targeted emails from my team of award-winning writers. Our goal is to provide a unique online resource for developers, architects and development managers tasked with building and maintaining enterprise applications using Visual Basic, C# and the Microsoft .NET platform.

    Hannah Smalltree, Editorial Director

    By submitting your registration information to SearchWinDevelopment.com you agree to receive email communications from TechTarget and TechTarget partners. We encourage you to read our Privacy Policy which contains important disclosures about how we collect and use your registration and other information. If you reside outside of the United States, by submitting this registration information you consent to having your personal data transferred to and processed in the United States. Your use of SearchWinDevelopment.com is governed by our Terms of Use. You may contact us at webmaster@TechTarget.com.

You can convert many of the intrinsic data types to and from an array of bytes and the actual type using the System.BitConverter class. Specifically look at the GetBytes method, and then the ToDouble and ToSingle methods to convert the byte array back to the appropriate type.


MEMBER FEEDBACK TO THIS ASK THE EXPERT Q&A:

This is a very clean and helpful answer. It saved me lots of time. Thanks.

—Keith D.


Do you have comments on this Ask the Expert question and response? Let us know.

This was first published in August 2005