The emulator wrote the file like that so of course it can read it, 1MB isn't a valid size though.
It's probably the 512KB save + another 512KB of garbage or a mirror of the save. This can probably be fixed by halving the file using a hex editor.
The save is ok, but your emulator filled the the rest of the file with empty data. Try using a newer version of DesMuMe http://desmume.org/download/
4 - Pokemon Black 2.dsv