2013-04-01 2 views
1

Я использую TBXML Parser ver. 1,4, Когда я Синтаксический этот вид следующих через TBXML товару синтаксического анализа, получение EXC_BAD_ACCESS ...TBXML Parser со специальным символом получения EXC_BAD_ACCESS

<trainingOrganization xsi:type="xsd:string">[email protected]#$%^&*()_+?> <,./;'{}|<":;'></trainingOrganization> 

Штука с этим вопросом.

Как я замечаю, что <> данные не удалось разобрать по TBXML ...

Заранее спасибо.

+0

Как насчет побега? '\ <' and '\>' – 2013-04-04 12:22:36

ответ

1

Один из лучших способов использования CDATA, что-либо внутри CDATA обрабатывается как XML-документ, поэтому, если у вас есть специальный символ, например ';:,.' '<>', тогда анализатор его проигнорирует. Поэтому я всегда предпочитаю использовать CDATA и советую вам использовать его.

+0

Его работы для меня ... Спасибо Sachin ... Хорошая работа .. :) –

0

Я думаю, что это ничего не делает анализатор TBXML.

Такие шарфы, как <>\"', должны быть замаскированы (по \), поэтому это может быть только кодировка вашего xml-файла или настройки его разбора.

В противном случае анализатор считает, что это:

<trainingOrganization xsi:type="xsd:string"> 
[email protected]#$%^&*()_+? 
> *<-- closing the previous element* 
<,./;'{}| 
    <":;'> 
</trainingOrganization> 

Если вы не можете найти какие-либо настройки или кодирования, чтобы сделать это автоматически, попробуйте его, заменив символы с \ перед ним перед разбором.

Другая возможность - правильно использовать xml и не позволять структуре устанавливать <> между элементами, что является самым простым способом.

Смежные вопросы