If you’re confident everything is at least 1 MB in size, and you don’t mind rounding down (e.g., 1.9MB will round to 1MB) then this should work:
NSLog(@"The file read from the disk has %lu MB", [readData length] / 1024);
(Anything under 1MB will give you 0 MB, which definitely looks wrong even if it’s quasi-correct.)
If you’d like more precision, you can specify a float value and make sure the division results in a float (integer division gives integers):
NSLog(@"The file read from the disk has %0.1f MB", [readData length] / 1024.0);
%0.1f should constrain the number of digits following the decimal point to give you values like 1.3, 5.0, etc.