У меня есть программа, которая генерирует XML-карты сайта для Google Webmaster Tools (среди прочего).
GWT выдает мне ошибки для некоторых карт сайта, потому что URL-адреса содержат последовательности символов, такие как ã¾, ã ‹, ã € и т. Д. **
GWT сообщает:
Мы требуем, чтобы ваш файл Sitemap был в кодировке UTF-8 (вы можете обычно это делают при сохранении файла). Как и во всех файлах XML, любые значения данных (включая URL-адреса) должны использовать управляющие коды сущностей для символов: & , ', «, < , > .
Специальные символы исключены в файлах XML (с объектами HTML).
Фрагмент файла XML:
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<url>
<loc>http://domain/folder/listing-ã.shtml</loc>
...
Закодированы ли мои URL-адреса UTF-8?
Если нет, Как мне это сделать в Java ?
Следующая строка в моей программе, где я добавляю URL-адрес в карту сайта:
siteMap.addUrl(StringEscapeUtils.escapeXml(countryName+"/"+twoCharFile.getRelativeFileName().toLowerCase()));
** = Я не уверен, какие из них вызывают ошибку, возможно первые два примера.
Приношу извинения за все изменения .