Iphone iOS:日期格式-2012年9月20日

Iphone iOS:日期格式-2012年9月20日,iphone,ios,date,Iphone,Ios,Date,我想以字符串“2012-11-22 10:19:04”中的格式“20-Sep-2012”显示日期。我该怎么做?iOS有内置的方法吗?试试这个 NSString *originalDateString = @"2012-11-22 10:19:04"; NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];//2012

我想以字符串“2012-11-22 10:19:04”中的格式“20-Sep-2012”显示日期。我该怎么做?iOS有内置的方法吗?

试试这个

NSString *originalDateString = @"2012-11-22 10:19:04";
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];//2012-11-22 10:19:04
然后使用它将日期字符串解析为

NSDate *date = [dateFormatter dateFromString:originalDateString];
您可以创建一个新的dateformatter以新格式打印,也可以将现有的dateformatter重新用作

[dateFormatter setDateFormat:@"dd-MMM-yyyy"];//22-Nov-2012
NSString *formattedDateString = [dateFormatter stringFromDate:date];
NSLog(@"Date in new format is %@", formattedDateString);
你的日志会这样打印<代码>2012年11月22日

试试这个

    NSString *str = @"2012-11-22 10:19:04";

    NSDateFormatter *dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
    [dateFormatter setDateFormat:@"yyyy-MM-dd HH:mm:ss"];

    NSDate *date = [dateFormatter dateFromString: str];

    dateFormatter = [[[NSDateFormatter alloc] init] autorelease];
    [dateFormatter setDateFormat:@"dd-MMM-yyyy"];

    NSString *convertedString = [dateFormatter stringFromDate:date];
    NSLog(@"Converted String : %@",convertedString);// Print Log (Output) is 22-Nov-2012

用这些信息查看我的博客

你可以通过以下方式实现

      NSDateFormatter *dfTime = [[NSDateFormatter alloc] init];
      [dfTime setDateFormat:@"yyyy--MM-dd HH:mm:ss"];
      NSDate *dtTime = [dfTime dateFromString:<Your string>];
      NSDateFormatter *df = [[NSDateFormatter alloc] init];
      [df setDateFormat:@"dd-MMM-yyyy"];
       <Your result string> = [df stringFromDate:dtTime];

Where <Your string> = @"2012-11-22 10:19:04" & 
<Your result string> will be your new string
NSDateFormatter*dfTime=[[NSDateFormatter alloc]init];
[dfTime setDateFormat:@“yyyy--MM dd HH:MM:ss”];
NSDate*dtTime=[dfTime DATEFORMSTRING:];
NSDateFormatter*df=[[NSDateFormatter alloc]init];
[df setDateFormat:@“dd-MMM-yyyy”];
=[df stringFromDate:dtTime];
其中=@“2012-11-22 10:19:04”和
这将是你的新字符串
享受编程乐趣

Swift 3:

override func viewDidLoad() {
super.viewDidLoad()
    print(self.getFormattedDate(myString: "2012-11-22 10:19:04"))
}

func getFormattedDate(myString: String) -> String{
        let dateFormatter = DateFormatter()
        dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
        let yourDate = dateFormatter.date(from: myString)!
        dateFormatter.dateFormat = "dd-MMM-yyyy"
        return dateFormatter.string(from: yourDate)
    }

是的,您可以将日期格式设置为dd-mmm-yyyy我该怎么办?你能提供代码吗?配偶变更//2012年9月20日至2012年11月22日配偶:)@乔希,谢谢。我只是引用他的问题,只是为了他的理解。只是想让他知道,等效的格式是这样的。如果我11:23需要
2012-11-22
?如何在inbetween@EICaptainv2.0您可以将
置于
格式中<代码>yyyy-MM-dd'在'HH:MM这应该有效。您可以将文本放在单引号内以取回。
override func viewDidLoad() {
super.viewDidLoad()
    print(self.getFormattedDate(myString: "2012-11-22 10:19:04"))
}

func getFormattedDate(myString: String) -> String{
        let dateFormatter = DateFormatter()
        dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss"
        let yourDate = dateFormatter.date(from: myString)!
        dateFormatter.dateFormat = "dd-MMM-yyyy"
        return dateFormatter.string(from: yourDate)
    }