Я извлекаю значение объекта XML в синтаксическом анализаторе libxml2 SAX аналогично тому, как ответ на этот вопрос предполагает. В частности, мой код выглядит так (attributes[i].value
есть *xmlChar
):
int valueLength = (int) (attributes[i].end - attributes[i].value);
value = [[[NSString alloc] initWithBytes:attributes[i].value
length:valueLength
encoding:NSUTF8StringEncoding
] autorelease];
Однако по какой-то причине, когда значение атрибута (в данном случае URL-адрес) имеет сущность &
в исходном XML, значение, которое я получаю, имеет &
.
Чего-чего?
Как мне заставить libxml2 декодировать объекты атрибутов (похоже, это нормально для объектов текстовых узлов), чтобы я просто получил &
?