Когда я просматриваю HTML из браузера, вопросительные знаки кодируются как 0xEF 0xBF 0xBD, что является кодировкой UTF-8 для метки порядка байтов или спецификации, или U + FEFF. Таким образом, по какой-либо причине HTML не передается как разумный UTF-8 (хотя, похоже, это действительно UTF-8).