首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSDateFormatter问题

NSDateFormatter问题
EN

Stack Overflow用户
提问于 2010-07-30 18:31:37
回答 2查看 514关注 0票数 0

嘿,我的日期是“2010年7月30日”。我如何打印它只作为月份和日期。"7/30“我尝试使用NSFormatter,但它打印我的当前日期,而不是我的数据库中存在的日期。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-30 19:00:41

代码语言:javascript
复制
NSDate *date = dateFromYourDataBase;
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"M/dd"];
NSLog(@"%@", [formatter stringFromDate:date]);
[formatter release];
票数 0
EN

Stack Overflow用户

发布于 2010-07-30 18:50:27

您可以为NSDate添加一些utility methods

下面是一个示例标题:

代码语言:javascript
复制
@interface NSDate (Utilities)

+ (NSDate *) customDateForString:(NSString *)dateString;
+ (NSDateFormatter *) customDateFormatter;

@end

实现:

代码语言:javascript
复制
@implementation NSDate (Utilities)

static NSDateFormatter *customDateFormatter = nil;

+ (NSDateFormatter *) customDateFormatter {
    // Example: 7/30
    if (!customDateFormatter) {
        customDateFormatter = [[NSDateFormatter alloc] init];
        [customDateFormatter setFormatterBehavior:NSDateFormatterBehavior10_4];
        [customDateFormatter setLocale:[[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"] autorelease]];

        // cf. http://unicode.org/reports/tr35/tr35-6.html#Date_Format_Patterns
        [customDateFormatter setDateFormat:@"M/d"];
    }  
    return customDateFormatter;
}

+ (NSDate *) customDateForString:(NSString *)dateString {
    return [[self customDateFormatter] dateFromString:dateString];
}

@end

当您需要解析日期字符串时,您可以这样调用它:

代码语言:javascript
复制
NSLog(@"Parsed date: %@", [NSDate customDateForString:@"7/30/2010"]); // Parsed date: 7/30
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3370637

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档