Можно ли добавить пользовательский текст в строку формата NSDateFormatter?
Предположим, что я хочу, чтобы дата выглядела так:
|1988|December|30|
Как добавить их в dateFormatter или, если на то пошло, пусть формат будет примерно таким:
30 in the month of December in the year of 1998
теперь для 1988, декабрь и 30, я хотел бы использовать стандартные форматы, но я хочу, чтобы текст, который я написал, также сопровождал их.
специально в случае вышеупомянутого, где в формате и трубах просто примыкают к формату даты для даты или месяца, когда между форматом и каналом нет пробела.
Можно ли это сделать, просто установив формат?
Ответы
Ответ 1
Вы можете вставить произвольный текст (заключенный в одинарные кавычки) в формате даты, например.
NSDateFormatter *fmt = [[NSDateFormatter alloc] init];
[fmt setDateFormat:@"dd' in the month of 'MMMM' in the year of 'yyyy"];
NSString *s = [fmt stringFromDate:[NSDate date]];
Результат:
09 in the month of July in the year of 2013
Ответ 2
Версия Swift:
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "EEEE' text here 'h:mm' and there 'a"
Ответ 3
Обновлено для iOS 13, Swift 5, Xcode 11 и построено на ответе Martin R
let dateFormatter = DateFormatter()
dateFormatter.timeZone = TimeZone.current
dateFormatter.locale = Locale.current
dateFormatter.dateFormat = "dd' in the month of 'MMMM' in the year of 'yyyy"
let stringDate = dateFormatter.string(from: Date())
print(stringDate)
// printed:
// 7 in the month of October in the year of 2019