Я хочу текущее время в следующем формате в строке.
дд-мм-гггг ЧЧ:ММ
Как?
Я хочу текущее время в следующем формате в строке.
дд-мм-гггг ЧЧ:ММ
Как?
Вам нужен модуль форматирования даты. Вот пример:
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"dd-MM-yyyy HH:mm"];
NSDate *currentDate = [NSDate date];
NSString *dateString = [formatter stringFromDate:currentDate];
a
— это строка формата для периода AM/PM. unicode.org/reports/tr35/tr35-10.html#Date_Format_Patterns
- person Carl Norum; 27.01.2012
Либо используйте NSDateFormatter
, как сказал Карл, либо просто используйте старый добрый strftime
, что также вполне допустимо для Objective-C:
#import <time.h>
time_t currentTime = time(NULL);
struct tm timeStruct;
localtime_r(¤tTime, &timeStruct);
char buffer[20];
strftime(buffer, 20, "%d-%m-%Y %H:%M", &timeStruct);
NSLog(@"%s", buffer)
.
- person Donovan Voss; 06.11.2009
Вот простое решение:
- (NSString *)stringWithDate:(NSDate *)date
{
return [NSDateFormatter localizedStringFromDate:date
dateStyle:NSDateFormatterMediumStyle
timeStyle:NSDateFormatterNoStyle];
}
Измените dateStyle
и timeStyle
в соответствии с вашими требованиями к форматированию.
date
в качестве параметра.
- person Zorayr; 11.01.2015
Может быть, это будет более читабельно:
NSDateFormatter *date = [[NSDateFormatter alloc] init];
[date setDateFormat:@"HH:mm"];
NSString *dateString = [date stringFromDate:[NSDate date]];
[self.time setText:dateString];
Прежде всего мы создаем встроенный в obj-c NSDateFormatter с именем date, затем применяем это с помощью [[NSDateFormatter alloc] init]; . После этого мы говорим обработчику кода, что хотим, чтобы наша дата была ЧАС/МИНУТА/СЕКУНД. Наконец, мы должны сделать нашу дату строкой для работы с предупреждением или установить значение метки, для этого мы должны создать строку с методом NSString, затем мы используем это: [date stringFromDate:[NSDate date ]]
Получайте удовольствие от этого.