Символы вопросительного знака, отображающиеся в рамках текста, почему это?

Как будто вы пытаетесь получить доступ к объекту, который является null. Рассмотрим ниже пример:

TypeA objA;

. В это время вы только что объявили этот объект, но не инициализировали или не инициализировали. И всякий раз, когда вы пытаетесь получить доступ к каким-либо свойствам или методам в нем, он будет генерировать NullPointerException, что имеет смысл.

См. Также этот пример:

String a = null;
System.out.println(a.toString()); // NullPointerException will be thrown
22
задан Glorfindel 15 February 2019 в 07:28
поделиться

7 ответов

Следующие статьи будут полезны

http://dev.mysql.com/doc/refman/5.0/en/charset-syntax.html

http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html

после соединения с базой данных, дают следующую команду:

ОПРЕДЕЛЕННЫЕ ИМЕНА 'utf8';

Гарантируют, что Ваша веб-страница также использует кодировку UTF-8:

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

PHP также предлагает несколько функций, которые будут полезны для преобразований:

http://us3.php.net/manual/en/function.iconv.php

http://us.php.net/mb_convert_encoding

20
ответ дан 29 November 2019 в 04:57
поделиться

Я пришел сюда в поисках решения для JavaScript, отображаемого в браузере и, хотя оно не имеет прямого отношения к базе данных ...

В моем случае я скопировал и вставил текст, найденный в Интернете, в файл JavaScript и сохранил его с помощью Блокнота Windows.

Когда на странице, использующей этот файл JavaScript, выводятся строки, вместо специальных символов, таких как буквы с надстрочными знаками и т. Д., Появляются вопросительные знаки (например, те, что показаны в вопросе)

.

Я открыл файл, используя Notepad++ . Сразу после открытия файла я увидел, что кодировка символов была установлена ​​как ANSI, как вы можете видеть (курсор мыши на нижнем колонтитуле) на следующем снимке экрана:

enter image description here

Чтобы решить эту проблему, щелкните меню Encoding в Notepad++ и выберите Encode in UTF-8. Тебе должно быть хорошо идти. :)

4
ответ дан 29 November 2019 в 04:57
поделиться

Ваш браузер не интерпретировал кодирование страницы правильно (или потому что Вы вызвали его к конкретной установке, или страница установлена неправильно), и таким образом не может отобразить некоторые символы.

1
ответ дан 29 November 2019 в 04:57
поделиться

Это будет чем-то, чтобы сделать с кодировками символов.

действительно ли Вы уверены, что зеркальный сайт имеет те же свойства относительно кодировок символов как Ваш основной сервер?

В зависимости от того, какой сервер Вы имеете, это может быть свойством самого серверного процесса, или это могла быть переменная среды.

, Например, если это - среда UNIX, возможно, пытаются сравнить ЛЕНГА или LC_ALL?

См. также здесь

1
ответ дан 29 November 2019 в 04:57
поделиться

Проверьте набор символов, испускаемый Вашим зеркальным сервером. Кажется, существует различие с этого на основной сервер - живой сайт, кажется, производит Unicode, где зеркало не. Кроме того, это обычно - хорошая идея вычистить символы Unicode в Вашем входящем содержании и заменить их их соответствующими объектами HTML.

Ваш конкретный вопрос расценивает "умные кавычки", "длинные тире" и "короткие тире". Я знаю, что можно заменить длинные тире &mdash; и n-тире с &ndash; (который должен быть сделан на входной стороне базы данных); я не знаю, какова корректная замена для умных кавычек была бы. (Я обычно просто заменяю все изогнутые одинарные кавычки 'и все изогнутые двойные кавычки с "... Фанаты книгопечатания могут не стесняться стрелять в меня на виде.)

я должен отметить, что некоторые браузеры являются более прощающими, чем другие с этой проблемой - Internet Explorer в Windows имеет тенденцию автоволшебно обнаруживать и "фиксировать" это; Firefox и большинство других браузеров отображают вопросительные знаки.

0
ответ дан 29 November 2019 в 04:57
поделиться

Я обычно проклинаю слово MS и затем выполняю следующий Wscript.

//заменяют путем к файлу, которому нужна очистка
ПУТЬ = "test.html"

var go=WScript. CreateObject ("Сценарии. FileSystemObject");
var content=go. GetFile (ПУТЬ).OpenAsTextStream ().ReadAll ();
var out=go. CreateTextFile ("чистый - "+ ПУТЬ, верный);

//символы
content=content.replace (/“/g'", ');
content=content.replace (/”/g'", ');
content=content.replace (/’/g"'");
content=content.replace (/†“/g", - ");
content=content.replace (/В©/g", & копия";);
content=content.replace (/В®/g", & reg";);
content=content.replace (/В °/g", & градус";);
content=content.replace (/В ¶/g", < p>";);
content=content.replace (/Вї/g", & iquest";);
content=content.replace (/ВЎ/g, '& iexcl';);
content=content.replace (/Вў/g, '& цент';);
content=content.replace (/ВЈ/g, '& фунт';);
content=content.replace (/ВҐ/g, '& иена';);

. Запишите (содержание);

0
ответ дан 29 November 2019 в 04:57
поделиться

Unicode или другие символы набора символов, проваливающиеся?

я видел, что подобные "странные" символы обнаруживаются на сайтах, я продолжал работать часто, когда текст копируется с электронного письма или некоторого другого формата документа (например, слово) в текстовый редактор. Редактор может отобразить не символы ASCII, но браузер не может. Для веб-сайта я предложил бы искать код сущности HTML для символа и вставить это вместо этого... или переключился бы на более стандартные.

0
ответ дан 29 November 2019 в 04:57
поделиться
Другие вопросы по тегам:

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