Hello Nick,
What you refer to as being ASCII is *not* ASCII (see
http://en.wikipedia.org/wiki/ASCII[
^]).
Only the 7-bit ASCII character encoding is unambiguously given.
There exist several 8-bit extensions to the original 7-bit encoding.
Your page claims to list
œ
as being part of latin-1. But reding carefully, the page says
[...] The extended ASCII codes (character code 128-255)
There are several different variations of the 8-bit ASCII table. The table below is according to ISO 8859-1, also called ISO Latin-1. Codes 129-159 contain the Microsoft® Windows Latin-1 extended characters. [...]
Microsoft decided some years ago to "modify" the standard to fit their needs. See
http://www.cs.tut.fi/~jkorpela/chars.html[
^] or more specific on
http://www.cs.tut.fi/~jkorpela/chars.html#win[
^].
Standard Latin-1 does *not* contain
œ
. That is included in Latin-9 (also known as ISO/IEC-8859-15), see also
ISO Latin 9 as compared with ISO Latin 1[
^] and
http://en.wikipedia.org/wiki/ISO/IEC_8859-15[
^].
Now, how to solve your issue?
Neither latin-1 nor latin-9 works on Windows.
You need to take
Encoding.GetEncoding(1252)
which happens to be the same result as calling
Encoding.Default
(as
ProgramFOX[
^] described in Solution #3).
Cheers
Andi