I just did a delete and then total clean install of version 2.2 and got all those ascii replacements throughout most posts which used many different kinds of punctuation.
It did not matter what theme. I upgraded another blog a few hours earlier and no problems. However...
This time I had USED THE BRAND-NEW CONFIG.PHP FILE (first new one I've ever seen and I almost didn't look at it).
As soon as I read another thread supposedly resolved, I READ THIS LINE he had mentioned there:
Or any other editor, which supports UTF-8,
and remembered seeing that line on the New config.php file.
I deleted the new and put back in the old and everything was perfect again. This is the first ever problem I've had with a WordPress install (script-wise) in about 40 installs and upgrades since May 2004.
Resolved by using old config.php file without what I've bolded below.
// ** MySQL settings ** //
define('WP_CACHE', true); //Added by WP-Cache Manager
define('DB_NAME', 'account_name'); // The name of the database
define('DB_USER', 'account_user'); // Your MySQL username
define('DB_PASSWORD', 'secretword'); // ...and password
define('DB_HOST', 'localhost'); // 99% chance you won't need to change this value
// You can have multiple installations in one database if you give each a unique prefix
$table_prefix = 'wp_'; // Only numbers, letters, and underscores please!
// Change this to localize WordPress. A corresponding MO file for the
// chosen language must be installed to wp-content/languages.
// For example, install de.mo to wp-content/languages and set WPLANG to 'de'
// to enable German language support.
define ('WPLANG', '');
/* That's all, stop editing! Happy blogging. */