When the English spelling for other countries/cities differs from the native, it can be for a few reasons:
It doesn't, but differs in pronunciation (France, Paris)
It reflects the correct pronunciation, in a different orthography (Brasil is pronounced with a /z/ sound, so Brazil works fine)
It reflects the etymology and is therefore a holdover from an earlier form in English (Netherlands > Nederlands)
It is based on a now non-existent region. (China ultimately derives from "Qin", after about a zillion intermediate steps along the silk road)
It is based on a region, from which the area became known elsewhere (India coming from the Indus river, which was where the Persian Empire and Greeks got to, and named the whole region after it).
It is basically impossible to pronounce in English, or the intervening languages (Croatia > Hrvatska > *XŃrvate)




















