I am working on a project that requires importing a large amount of data from 'text data files' that were originally created with QuickBasic (in the 1980's). One (not-so-quick) lesson I've just learned...that old text isn't written with ISO, UTF, or even ASCII encoding. It's windows-1252.
The problem showed up when trying to convert a two-bit string into an integer (the pointer to a related record) with the CVI() function. Those funny little non-usual characters don't come through correctly with any other code page...
With a simple line:
Encoding encoding = Encoding.GetEncoding(1252);
Everything works.