Я вытащил некоторые текстовые значения из базы данных, мне нужно разобрать этот текст, но когда я печатаю текст на консоли, у него есть «?» которые не видны в блокноте ++ и sqlyog. Ниже приведен пример:Строка с нежелательным символом в java
(некоторая символьная строка) ?????? (другая строка) ???
Мне нужно удалить их, но все мои усилия пошли напрасно. Я использовал метод replace replaceall и преобразовывал текст в массив символов и снова создавал текст, но он не работает. Как удалить эти '?' символы из текста?
Заранее спасибо.
Вы идете об этом неправильно. Убедитесь, что вы используете правильную кодировку символов. –
какой символ вы используете? возможно, попробуйте преобразовать character_set? например ALTER DATABASE databasename CHARACTER SET utf8 COLLATE utf8_unicode_ci; –
И если вы хотите вникать в это больше, помните, что «?» символы почти наверняка не представляют собой актуальные вопросительные знаки 'U003F' в выводе. Скорее, они, вероятно, используются программным обеспечением (например, Notepad ++ или что-то еще до стека), чтобы указать персонажа, в котором у них нет глифа в текущем шрифте. Если вы хотите знать, что это такое на самом деле, присоедините отладчик и проверьте значения 'char' строки в этих индексах. –