Saving data from temperature sensor on microSD card

This should print out the temperature to three decimal places:

  int temperature = msb<<8 | lsb;

  // make a string for assembling the data to log:
  String dataString = "temperature= ";
  // read three sensors and append to the string:
    dataString += String(temperature/128);
    temperature %= 128;  //  Strip off the integer degrees
    dataString += ".";  // Decimal point 
    for (int i=0; i<3; i++)
       {
       temperature *= 10;  // "shift" the number one digit to the left
       dataString += "0" + (temperature/128);  // Add that one digit to the string
       temperature %= 128;  // Strip off that digit
       }

   dataString += "";