文字列の次の形式で現在の時刻が必要です。
dd-mm-yyyy HH:MM
どうやって?
日付フォーマッタ が必要です。次に例を示します。
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"dd-MM-yyyy HH:mm"];
NSDate *currentDate = [NSDate date];
NSString *dateString = [formatter stringFromDate:currentDate];
Carlが言ったようにNSDateFormatter
を使用するか、または完全に有効なObjective-Cでもある古き良きstrftime
を使用します。
#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);
簡単なソリューションを次に示します。
- (NSString *)stringWithDate:(NSDate *)date
{
return [NSDateFormatter localizedStringFromDate:date
dateStyle:NSDateFormatterMediumStyle
timeStyle:NSDateFormatterNoStyle];
}
dateStyle
とtimeStyle
を変更して、フォーマットの要件に一致させます。
たぶんこれはもっと読みやすいでしょう:
NSDateFormatter *date = [[NSDateFormatter alloc] init];
[date setDateFormat:@"HH:mm"];
NSString *dateString = [date stringFromDate:[NSDate date]];
[self.time setText:dateString];
まず最初にNSDateFormatter obj-cに名前date、次に適用します[[NSDateFormatter alloc] init];。その後、コードプロセッサに、日付にHOUR/MINUTE/SECONDを持たせたいと言います。最後に、日付をアラートで動作する文字列にするか、ラベルの値を設定する必要があります。これを行うには、NSStringメソッドで文字列を作成し、これを使用します。 [日付stringFromDate:[NSDate日付]]
それを楽しんでください。