This is a character encoding issue. The browser does not
understand all
the characters you are trying to display according to the
encoding
information it was given. If you are not dealing with foreign
languages, then you are probably running against Microsoft
Word's use of
'extended' characters such as curly quotes and em and en
dashes. A web
page using the vanilla 'ascii' encoding does not understand
these
extended characters.
You can either use a encoding that does understand them such
as UTF-8 or
windows-1252. Or you can convert your output to plain ascii
that uses
regular quotes and dashes rather the the extended ones.