Why does Eclipse use Cp1252 encoding?

Andrew Martin picture Andrew Martin · Dec 9, 2012 · Viewed 47.1k times · Source

Apologies if this is a very amateurish question! I know Eclipse uses Cp1252 as the default for its encoding.
I recently created a program using hash maps to convert letters input to Braille. To do this, I had to change the encoding method to UTF-8.

I know very little about either, but everything I've read indicates UTF-8 can represent every character in Unicode and has a much bigger library of recognised symbols.

Why then is it not the preferred encoding style for Eclipse?

Answer

Isaac picture Isaac · Dec 9, 2012

When you start Eclipse against a brand new workspace, Eclipse has to decide which encoding to use, by default, when handling certain types of text-based files: text files, Java source files, JSP files, XML and so forth.

By default, then, Eclipse uses the default platform encoding, which is derived from your operating system's settings.

As to why UTF-8 isn't the default encoding for text files, the reason is that still, throughout the world, there is a significant number of plain text files for which UTF-8 is not backward compatible. While UTF-8 is backward compatible with most western encodings, that is not the case for other encodings.

You can change these default encodings by modifying the workspace's settings. Remember, though, that these settings are stored at the workspace level; if you later start a new workspace, the new workspace will have the default encodings set.

To change the default encodings, just go to Workspace -> Preferences, and type "encoding" in the search box at the top left of the dialog. Eclipse will filter the preferences' dialog to contain items that are relevant for encodings.