NSMutableString appendFormat ... добавляет пробелы? - PullRequest
1 голос
/ 30 января 2012

При попытке добавить к NSMutableString с appendFormat - добавляет пробелы.

NSM - это просто NSMutableString, att_1_variable и att_2_variable - NSString

[NSM appendFormat:@"<tagname att_1=\" %@ \" att_2=\" %@ \">", att_1_variable, att_2_variable];

Результат:

<tagname myattribute="  ContentOfVariable  " title=" ContentOfVariable  ">

Перед передачей в строки я делаю:

* * 1010

Есть ли способ обойти это?

Спасибо С уважением Christian

Ответы [ 2 ]

2 голосов
/ 30 января 2012

Вы сами добавляете пробелы, включая их в строку формата. В C escape-последовательность для кавычки просто \", без завершающего (или начального) пробела. Итак, вы хотите:

[NSM appendFormat:@"<tagname myattribute=\"%@\" title=\"%@\">", 
                                 attributeVariable, titleVariable];

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

NSString *trimmedAttributeVariable = [attributeVariable
        stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];

...

[NSM appendFormat:@"<tagname myattribute=\"%@\" title=\"%@\">", 
                                 trimmedAttributeVariable, ...

, который будет обрезать пробелы и табуляции с обоих концов.

0 голосов
/ 30 января 2012

Полагаю, вы хотите, чтобы результат был

<tagname myattribute="ContentOfVariable" title="ContentOfVariable">

В этом случае удалите лишние пробелы, которые были вокруг спецификаторов формата, как таковые:

[NSM appendFormat:@"<tagname myattribute=\"%@\" title=\"%@\">", attributeVariable, titleVariable];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...