problema con sd.h file.read()

Su Arduino il tipo int (o unsigned int) sono 2 byte. E' il long (e unsigned long) che sono lunghi 4 byte.

Per scrivere il dato può usare semplicemente le funzioni lowByte e highByte, oppure una union oppure le operazioni di bit shift.