Заполнение NSString не работает - PullRequest
3 голосов
/ 27 декабря 2011

Я прочитал это на левой клавиатуре NSString, все, что вам нужно сделать, это:

NSString *paddedStr = [NSString stringWithFormat:@"%-20.20@ %-20.20@", 
                          aString, anotherSting];

Но это не работает !!Я не знаю почему.Я перепробовал много комбинаций без успеха.Примеры:

NSString *paddedStr = [NSString stringWithFormat:@"%-20s@", " ", myString];

но этот путь уродлив и ... уродлив.Он просто добавляет в 20 раз символ ("") перед строкой (myString), и это не то, что нам нужно, верно?

Цель состоит в том, чтобы отформатировать строку NSString для представления двух или более столбцов по 20 символов в каждомодин независимо от длины строки в строке.

Пример вывода цели:

Day       Hour      Name      Age

Кто-нибудь знает, как это сделать правильно?

Я использую ARC и iOS 5.

И на самом деле отформатированная строка будет записана в файл с использованием NSFileHandle.

Спасибо всем вамнарод !!

Редактировать:

Я заметил, что это работает:

NSString *str = [NSString stringWithFormat:@"%-10.10s %-10.10s", 
                    [strOne UTF8String], [strTwo UTF8String]];

Но ... Мы не хотим C-Строки стиля либо.

1 Ответ

2 голосов
/ 27 декабря 2011

Вот способ сделать это:

NSString *paddedStr = [NSString stringWithFormat:@"%@%@", 
                       [@"day" stringByPaddingToLength:20
                                            withString:@" "
                                       startingAtIndex:0], 
                       [@"Hour" stringByPaddingToLength:20
                                             withString:@" "
                                        startingAtIndex:0]];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...