我試圖將NSString
這樣的一個「2300」轉換爲NSDate
格式。 (注意:23後沒有冒號)。將NSString(例如:「2300」)轉換爲NSDate(iOS)
我從外部Web服務獲取字符串。我需要以12小時的格式在我的應用中顯示這個時間。
謝謝:)
我試圖將NSString
這樣的一個「2300」轉換爲NSDate
格式。 (注意:23後沒有冒號)。將NSString(例如:「2300」)轉換爲NSDate(iOS)
我從外部Web服務獲取字符串。我需要以12小時的格式在我的應用中顯示這個時間。
謝謝:)
我加入這裏的三種類型,其中tyope你需要選擇
類型-1
NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setDateFormat:@"HHmm"];
[formatter setTimeZone:[NSTimeZone systemTimeZone]];
[formatter setLocale:[NSLocale systemLocale]];
NSDate *date = [formatter dateFromString:@"2300"];
[formatter setDateFormat:@"hh:mm"];
NSString *finalDate = [formatter stringFromDate:date];
NSLog(@"finalDate==%@",finalDate);
類型-2
NSDateFormatter *formatter1 = [[NSDateFormatter alloc] init];
[formatter1 setDateFormat:@"HHmm"];
[formatter1 setTimeZone:[NSTimeZone systemTimeZone]];
[formatter1 setLocale:[NSLocale systemLocale]];
NSDate *date1 = [formatter1 dateFromString:@"2300"];
[formatter1 setDateFormat:@"hhmm"];
NSString *finalDate1 = [formatter1 stringFromDate:date1];
NSLog(@"finalDate1==%@",finalDate1);
Typ Ë-3
NSDateFormatter *formatter2 = [[NSDateFormatter alloc] init];
[formatter2 setDateFormat:@"HHmm"];
[formatter2 setTimeZone:[NSTimeZone systemTimeZone]];
[formatter2 setLocale:[NSLocale systemLocale]];
NSDate *date2 = [formatter1 dateFromString:@"2300"];
[formatter2 setDateFormat:@"hh:mm a"];
NSString *finalDate2 = [formatter2 stringFromDate:date2];
NSLog(@"finalDate2==%@",finalDate2);
你得到像
你是否有解決方案 –
這對我的作品感謝你。 :) –
@AbbinVarghese - welcome –
如果我理解你正確地質疑,2300實際上是23:00,即晚上11點。 所以,首先你需要從字符串獲取日期,只有我能想到的與你得到的數據的方法是使用Substring
- (NSDate*) getDateFromweb:(NSString *)dateString
{
NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeZone:[NSTimeZone systemTimeZone]];
[dateFormatter setLocale:[NSLocale systemLocale]];
[dateFormatter setDateFormat:@"HHmm"];
NSDate *date = [dateFormatter dateFromString:dateString];
[dateFormatter setDateFormat:@"hh:mm a"];
NSString *pmAm = [dateFormatter stringFromDate:date];
return pmAm;
}
添加系統區域設置和時區的建議從abizern。 這也將不承擔datestring有4位
「2300」 的輸出可以是任何東西。你是說這是一個24小時格式(hhmm)的時間,你想將它轉換爲NSDate,然後轉換爲12小時格式的時間字符串? –
是..「2300」是24小時格式的時間 –
您得到這種類型格式:下午11:00? –