Странный символ в Tempurture Reading

Кто-нибудь может опознать этот символ?

, 👍-1

Обсуждение

Это А с циркумфлексом. Это отвечает на ваш вопрос? Если вы хотите знать, почему это там, вам нужно предоставить больше информации, включая ваш код., @chrisl

Все, что сказал @chrisl. Кроме того, вы должны знать, что существует несколько, по крайней мере, две последовательности Unicode, которые будут генерировать одно и то же представление., @timemage


1 ответ


3

Знак градуса (°) — это символ Юникода U+00B0 (т. е. кодовая точка 0xb0). В UTF-8 он кодируется как двухбайтовая последовательность 0xc2 0xb0. Ваш браузер не в курсе, что страница закодирована как UTF-8, и почему-то считал, что это ISO-8859-1. Эта двухбайтовая последовательность, интерпретируемая как ISO-8859-1 представляет два символа «Â» и «°».

Самым простым решением может быть добавление

<meta charset="utf-8">

в верхней части элемента <head> веб-страницы.

,

… или используйте html-объект &deg;., @Grimaldi

ВЫДАЮЩИЙСЯ! Однострочное предложение Эдгара решило проблему! Страница ESP32 теперь выглядит идеально., @Rachel R

@RachelR И предложение Гримальди - это единственное правильное решение<TM>. ;-) Пожалуйста, отметьте ответ, который вы считаете наиболее подходящим, как "принятый". Возможно, вы захотите посетить [тур], чтобы узнать, как работает этот сайт., @the busybee

@thebusybee: Вы имеете в виду, что есть что-то неправильное™ в кодировании веб-страниц в UTF-8?, @Edgar Bonet

Это зависит. ;-) Допустим, вы хотите поддерживать большинство систем, а не только Win, Mac и Linux, тогда вам нужно предположить, что не все из них знают UTF-8. Для тех, кто живет в стране, где в письменном языке используются не-ASCII-символы, одной из наиболее неприятных проблем является отсутствие кодирования таких символов в виде объектов HTML. Впрочем, ничего страшного, если принять редкие случаи "странных персонажей"., @the busybee

@thebusybee: Вы знаете веб-браузер, который понимает &deg;, но не °, написанный в UTF-8? Это Mosaic или какая-то другая ретрокомпьютерная вещь? Сейчас 2023 год. UTF-8 существует уже 30 лет и является де-факто бесспорным стандартом кодировки Интернета на всей планете. Я твердо верю, что пришло время двигаться дальше и оставить браузеры до UTF-8 музеям компьютерной истории., @Edgar Bonet

О, дело не в веб-серверах, а в веб-браузерах. И (без попытки) есть много старых и маленьких компьютеров, которые все еще используются, и которые не могут запускать полноценный браузер, такой как Firefox или Chromium. Например, у меня есть старый (20+ лет) ноутбук с Void Linux, который прекрасно работает на рабочем столе. Он прекрасно подходит для большинства задач разработки, но не для «современного» веб-серфинга. Не говоря уже о любителях, все еще работающих со своим ZX81. :-D Да, такие есть, но, допустим, их мало., @the busybee

И вариант использования OP, по-видимому, похож на значения среды, предоставляемые веб-сервером, в области IoT. Использование ограниченных устройств в качестве «дисплея» довольно распространено при этом. -- Заключительная строка: если стандарт более совместим, даже старый, зачем использовать менее совместимый стандарт только потому, что он новее? Оба работают с современными браузерами. Но только старый работает с ограниченными браузерами., @the busybee

@thebusybee: я понимаю, что речь идет о браузерах. Было бы интересно проверить &deg; и ° на вашем старом ноутбуке. Какой браузер работает? Обратите внимание, что синтаксический анализ UTF-8 требует меньше вычислительных ресурсов, чем синтаксический анализ именованных ссылок. ИМО, ценность UTF-8 заключается в удобочитаемости источника, что я очень ценю., @Edgar Bonet

Давайте сэкономим время, я не могу позволить себе исследовать эту деталь. Я только что сделал общее замечание, касающееся использования старых стандартов по сравнению с новыми стандартами только из-за их более широкой поддержки. Это не делает ваш ответ неправильным, и я предложил принять его., @the busybee

@thebusybee: Только косвенно связано с этим обсуждением ... Я только что наткнулся на [WebOne](https://github.com/atauenis/webone), HTTP-прокси, который позволяет использовать старые браузеры в современной сети. Выглядит как классный проект, и я подумал, что он может вас заинтересовать., @Edgar Bonet