Как создать буквальную строку XML с Objective-C? - PullRequest
3 голосов
/ 24 мая 2010

У меня есть длинные XML-строки, которые я жестко кодирую в модульных тестах проекта iPhone.

Довольно неприятно избегать всех кавычек и разрывов строк - например:

NSString *xml = 
@"<?xml version=\"1.0\" encoding=\"UTF-8\"?>\
<root>\
    <element name=\"foo\" />\
</root>";

Было бы очень хорошо иметь способ сделать это с меньшим трением.

Я знаю, что в Ruby есть отличный синтаксис для многострочных литералов ... любые предложения для Objective-C?

1 Ответ

7 голосов
/ 24 мая 2010

ObjC также имеет многострочные литералы, а одинарные кавычки являются допустимыми в XML:

NSString *xml = 
@"<?xml version='1.0' encoding='UTF-8'?>"
 "<root>"
    "<element name='foo' />"
 "</root>";

Обратите внимание, что это не встраивает перевод строки в строку, что немного отличается от вашего кода.

...