Как избавиться от специального символа в HTML после получения ответа от API [duplicate]

Многие объяснения уже присутствуют, чтобы объяснить, как это происходит и как это исправить, но вы также должны следовать рекомендациям, чтобы избежать NullPointerException вообще.

См. также: A хороший список лучших практик

Я бы добавил, очень важно, хорошо использовать модификатор final. Использование "окончательной" модификатор, когда это применимо в Java

Сводка:

  1. Используйте модификатор final для обеспечения хорошей инициализации.
  2. Избегайте возврата null в методы, например, при возврате пустых коллекций.
  3. Использовать аннотации @NotNull и @Nullable
  4. Быстрое завершение работы и использование утверждений, чтобы избежать распространения нулевых объектов через все приложение, когда они не должен быть пустым.
  5. Сначала используйте значения с известным объектом: if("knownObject".equals(unknownObject)
  6. Предпочитают valueOf() поверх toString ().
  7. Используйте null safe StringUtils StringUtils.isEmpty(null).

24
задан Eric Laoshi 24 February 2015 в 19:30
поделиться

3 ответа

Этот специфический символ обычно является признаком недействительного (не UTF-8) символа, отображаемого на выходе (например, странице), который был объявлен как UTF-8. Это часто случается, когда

  • соединение с базой данных не кодируется в кодировке UTF-8 (даже если эти таблицы)
  • исходный файл HTML или скрипта хранится в неправильном кодировании ( например, Windows-1252 вместо UTF-8) - убедитесь, что он сохранен как файл UTF-8. Параметр часто находится в диалоговом окне «Сохранить как ...».
  • извлекается онлайн-источник (например, виджет или RSS-канал), который не обслуживает UTF-8
24
ответ дан Pekka 웃 19 August 2018 в 18:31
поделиться
  • 1
    Нет базы данных, нет RSS и использования UTF-8. – user1032531 7 March 2013 в 18:30
  • 2
    @user, так какова ваша ситуация? Откуда появился персонаж? – Pekka 웃 7 March 2013 в 18:34
  • 3
    Я думаю, что я давно вырезал и вставил из документа MS Word. Он не появляется, если я смотрю на текст, используя основной текстовый редактор (т. Е. Примечание) – user1032531 7 March 2013 в 18:36
  • 4
    @user убедитесь, что файл хранится как UTF-8. У вас может быть поле выбора для этого эффекта в "save as ... & quot; диалог – Pekka 웃 7 March 2013 в 18:37
  • 5
    Brilliant! Он был сохранен как Windows 1252. Пожалуйста, добавьте это в свой ответ. Благодаря! – user1032531 7 March 2013 в 18:40

У меня была такая же проблема ....

Вы можете исправить это, добавив следующую строку в свой шаблон!

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

Для получения дополнительной информации:

Читайте это - http://blog.salientdigital.com/2009/06/06/special-characters-showing-up-as-a-question-mark-inside-of-a-black-diamond / комментарий-страница-1 / # комментарии

2
ответ дан pradip 19 August 2018 в 18:31
поделиться

Это проблема с набором символов. Получите инструмент, который проверяет заголовки ответов сервера (например, расширение Firebug, если вы используете Mozilla Firefox), чтобы узнать, какой символ задает серверный ответ для отправки с контентом. Если набор символов сервера и набор символов HTML фактического содержимого не совпадают, вы увидите некоторые странно выглядящие символы, такие как маленькие квадраты черного алмаза.

4
ответ дан topcat3 19 August 2018 в 18:31
поделиться
  • 1
    У меня есть Firebug. Вы имеете в виду просмотр вкладки HTML? Я вижу то же самое. – user1032531 7 March 2013 в 18:24
  • 2
    Используйте вкладку «Сеть», и там вы можете увидеть все запросы и ответы и заголовки – topcat3 7 March 2013 в 18:28
Другие вопросы по тегам:

Похожие вопросы: