> On Mar 30, 2017, at 5:25 PM, Carl Hoefs <newsli...@autonomy.caltech.edu> > wrote: > > I have megabytes of raw legacy science datasets that I'm trying to read into > my app and ingest into an array of doubles. The data is supposed to be > organized as a stream of 8-byte doubles. I do not know how these datasets > were generated, so I don't know what format (big/little endian, byte swapped, > etc) they are in. > > If I read the data directly into double variables, they evaluate as very > small (E-92, etc). > > I've tried all of these functions: > > NSSwapDouble() > NSSwapBigDoubleToHost() > NSSwapLittleDoubleToHost() > NSConvertSwappedDoubleToHost() > CFConvertDoubleSwappedToHost() > > The above functions generally return invalidly large values (E+87, etc). > > Here is a hex dump of 4 binary doubles: > > 49BF7DE372533C05 A8C02FE3135B4F09 86C22FE37E630B05 27C2C4E3E258BA08 > > It seems there's some structure to them, as the last byte is always in the > range of 03 to A0, so maybe they somehow correspond to IEEE 754 > double-precision binary floating point format? > > Is there yet another function I could use to parse this binary data?
There are lots of pre-IEEE floating-point formats. Here is a list of a few dozen of them: Floating-Point Formats http://www.quadibloc.com/comp/cp0201.htm <http://www.quadibloc.com/comp/cp0201.htm> I doubt you will be able to guess your floating-point format unless you have a collection of known values in both IEEE format and your format. Many of the historical formats are similar enough that misinterpretation could give incorrect values that look reasonable by eye. -- Greg Parker gpar...@apple.com <mailto:gpar...@apple.com> Runtime Wrangler _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com