Задать вопрос
@Pavel242

Как заменить десятиричные xml сущности на шестнадцатиричные?

Для формирования XML использую класс QXmlStreamReader, в итоговом документе сущности десятичные, то есть & #13; вместо & #xD; Можно ли как-то с этим справиться?
  • Вопрос задан
  • 36 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Разработчик C++
    9 месяцев
    Далее
  • Нетология
    Разработчик на C++: Профессия + специализация + нейросети
    12 месяцев
    Далее
  • Яндекс Практикум
    Разработчик C++ расширенный
    12 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 1
IGHOR
@IGHOR Куратор тега Qt
Qt/C++ DEV/CTO
void translateInt10ToHex(QString& str)
{
    static const QRegExp rX("(\\&\\#[0-9]{2,3})");
    int pos = 0;

    while ((pos = rX.indexIn(str, pos)) > -1)
    {
        QString xB = rX.cap(1);
        str.replace(pos++, xB.size(), QLatin1String("&#x") + QByteArray(1, xB.right(xB.size() - 2).toUShort()).toHex().toUpper());
    }
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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