parseFloat() problem

Save the data to SD as a long or unsigned long by multiplying the number by 1,000,000 before saving. Uses the same 4 bytes but you don't have the inaccuracy of floats. Divide by 1,000,000 and cast as float when you retrieve the number.