NSDateFormatter Class Reference

Inherits from
Conforms to
Framework
/System/Library/Frameworks/Foundation.framework
Availability
Available in OS X v10.0 and later.
Companion guide
Declared in
NSDateFormatter.h
Related sample code

Overview

Instances of NSDateFormatter create string representations of NSDate objects, and convert textual representations of dates and times into NSDate objects. You can express the representation of dates and times flexibly using pre-set format styles or custom format strings.

Date formats for user-visible strings should be configured using the styles configured by the user—use setDateStyle:, setTimeStyle:, and appropriate style constants (defined in NSDateFormatterStyle) to choose between them.

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeStyle:NSDateFormatterNoStyle];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
 
NSDate *date = [NSDate dateWithTimeIntervalSinceReferenceDate:118800];
 
NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
[dateFormatter setLocale:usLocale];
 
NSLog(@"Date for locale %@: %@",
      [[dateFormatter locale] localeIdentifier], [dateFormatter stringFromDate:date]);
// Output:
// Date for locale en_US: Jan 2, 2001
 
NSLocale *frLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"fr_FR"];
[dateFormatter setLocale:frLocale];
NSLog(@"Date for locale %@: %@",
      [[dateFormatter locale] localeIdentifier], [dateFormatter stringFromDate:date]);
// Output:
// Date for locale fr_FR: 2 janv. 2001

If for some reason you need to define a format that was not specified by the user at the system level, you can set individual attributes such as the locale, time zone, calendar, format string, and various textual strings like the month names.

Note that although setting a format string (setDateFormat:) in principle specifies an exact format, in practice it may nevertheless also be overridden by a user’s preferences—see Data Formatting Guide for more details.

Formatter Behaviors and OS Versions

OS X v10.4 introduced the modern behavior for NSDateFormatter. See Data Formatting Guide for a full description of the old and new behaviors.

In OS X v10.5 and later, NSDateFormatter defaults to the modern behavior. If necessary, you can set the default class behavior using setDefaultFormatterBehavior:, or you can set the behavior for an instance using setFormatterBehavior:.

Tasks

Initializing a Date Formatter

Converting Objects

Managing Formats and Styles

Managing Attributes

Managing Behavior Version

Managing Natural Language Support

Managing AM and PM Symbols

Managing Weekday Symbols

Managing Month Symbols

Managing Quarter Symbols

Managing Era Symbols

Class Methods

dateFormatFromTemplate:options:locale:

Returns a localized date format string representing the given date format components arranged appropriately for the specified locale.

+ (NSString *)dateFormatFromTemplate:(NSString *)template options:(NSUInteger)opts locale:(NSLocale *)locale
Parameters
template

A string containing date format patterns (such as “MM” or “h”).

For full details, see Date and Time Programming Guide.

opts

No options are currently defined—pass 0.

locale

The locale for which the template is required.

Return Value

A localized date format string representing the date format components given in template, arranged appropriately for the locale specified by locale.

The returned string may not contain exactly those components given in template, but may—for example—have locale-specific adjustments applied.

Discussion

Different locales have different conventions for the ordering of date components. You use this method to get an appropriate format string for a given set of components for a specified locale (typically you use the current locale—see currentLocale).

The following example shows the difference between the date formats for British and American English:

NSLocale *usLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_US"];
NSLocale *gbLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"en_GB"];
 
NSString *dateFormat;
NSString *dateComponents = @"yMMMMd";
 
dateFormat = [NSDateFormatter dateFormatFromTemplate:dateComponents options:0 locale:usLocale];
NSLog(@"Date format for %@: %@",
    [usLocale displayNameForKey:NSLocaleIdentifier value:[usLocale localeIdentifier]], dateFormat);
 
dateFormat = [NSDateFormatter dateFormatFromTemplate:dateComponents options:0 locale:gbLocale];
NSLog(@"Date format for %@: %@",
    [gbLocale displayNameForKey:NSLocaleIdentifier value:[gbLocale localeIdentifier]], dateFormat);
 
// Output:
// Date format for English (United States): MMMM d, y
// Date format for English (United Kingdom): d MMMM y
Availability
  • Available in OS X v10.6 and later.
Declared In
NSDateFormatter.h

defaultFormatterBehavior

Returns the default formatting behavior for instances of the class.

+ (NSDateFormatterBehavior)defaultFormatterBehavior
Return Value

The default formatting behavior for instances of the class. For possible values, see NSDateFormatterBehavior.

Discussion

For iOS and for OS X applications linked against OS X v10.5 and later, the default is NSDateFormatterBehavior10_4.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

localizedStringFromDate:dateStyle:timeStyle:

Returns string representation of a given date formatted for the current locale using the specified date and time styles.

+ (NSString *)localizedStringFromDate:(NSDate *)date dateStyle:(NSDateFormatterStyle)dateStyle timeStyle:(NSDateFormatterStyle)timeStyle
Parameters
date

A date.

dateStyle

A format style for the date. For possible values, see NSDateFormatterStyle.

timeStyle

A format style for the time. For possible values, see NSDateFormatterStyle.

Return Value

A localized string representation of date using the specified date and time styles

Discussion

This method uses a date formatter configured with the current default settings. The returned string is the same as if you configured and used a date formatter as shown in the following example:

NSDateFormatter *formatter = [[NSDateFormatter alloc] init];
[formatter setFormatterBehavior:NSDateFormatterBehavior10_4];
[formatter setDateStyle:dateStyle];
[formatter setTimeStyle:timeStyle];
NSString *result = [formatter stringForObjectValue:date];
Availability
  • Available in OS X v10.6 and later.
Related Sample Code
Declared In
NSDateFormatter.h

setDefaultFormatterBehavior:

Sets the default formatting behavior for instances of the class.

+ (void)setDefaultFormatterBehavior:(NSDateFormatterBehavior)behavior
Parameters
behavior

The default formatting behavior for instances of the class. For possible values, see NSDateFormatterBehavior.

Availability
  • Available in OS X v10.4 and later.
Related Sample Code
Declared In
NSDateFormatter.h

Instance Methods

allowsNaturalLanguage

Returns a Boolean value that indicates whether the receiver attempts to process dates entered as a vernacular string.

- (BOOL)allowsNaturalLanguage
Return Value

YES if the receiver attempts to process dates entered as a vernacular string (“today,” “next week,” “dinner time,” and so on), otherwise NO.

Discussion

Natural-language processing supports only a limited set of colloquial phrases, primarily in English. It may give unexpected results, and its use is strongly discouraged.

Special Considerations

This method is for use with formatters using NSDateFormatterBehavior10_0 behavior.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

AMSymbol

Returns the AM symbol for the receiver.

- (NSString *)AMSymbol
Return Value

The AM symbol for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

calendar

Returns the calendar for the receiver.

- (NSCalendar *)calendar
Return Value

The calendar for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

dateFormat

Returns the date format string used by the receiver.

- (NSString *)dateFormat
Return Value

The date format string used by the receiver.

Discussion

See Data Formatting Guide for a list of the conversion specifiers permitted in date format strings.

Availability
  • Available in OS X v10.0 and later.
Declared In
NSDateFormatter.h

dateFromString:

Returns a date representation of a given string interpreted using the receiver’s current settings.

- (NSDate *)dateFromString:(NSString *)string
Parameters
string

The string to parse.

Return Value

A date representation of string interpreted using the receiver’s current settings. If dateFromString: can not parse the string, returns nil.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

dateStyle

Returns the date style of the receiver.

Return Value

The date style of the receiver. For possible values, see NSDateFormatterStyle.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

defaultDate

Returns the default date for the receiver.

- (NSDate *)defaultDate
Return Value

The default date for the receiver.

Discussion

The default default date is nil.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

doesRelativeDateFormatting

Returns a Boolean value that indicates whether the receiver uses phrases such as “today” and “tomorrow” for the date component.

- (BOOL)doesRelativeDateFormatting
Return Value

YES if the receiver uses relative date formatting, otherwise NO.

Discussion

For a full discussion, see setDoesRelativeDateFormatting:.

Availability
  • Available in OS X v10.6 and later.
Declared In
NSDateFormatter.h

eraSymbols

Returns the era symbols for the receiver.

- (NSArray *)eraSymbols
Return Value

An array containing NSString objects representing the era symbols for the receiver (for example, {“B.C.E.”, “C.E.”}).

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

formatterBehavior

Returns the formatter behavior for the receiver.

- (NSDateFormatterBehavior)formatterBehavior
Return Value

The formatter behavior for the receiver. For possible values, see NSDateFormatterBehavior.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

generatesCalendarDates

You should not use this method.

- (BOOL)generatesCalendarDates
Return Value

YES if the receiver generates calendar dates, otherwise NO.

Discussion

NSCalendarDate is no longer supported; you should not use this method.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

getObjectValue:forString:range:error:

Returns by reference a date representation of a given string and the range of the string used, and returns a Boolean value that indicates whether the string could be parsed.

- (BOOL)getObjectValue:(out id *)obj forString:(NSString *)string range:(inout NSRange *)rangep error:(out NSError **)error
Parameters
obj

If the receiver is able to parse string, upon return contains a date representation of string.

string

The string to parse.

rangep

If the receiver is able to parse string, upon return contains the range of string used to create the date.

error

If the receiver is unable to create a date by parsing string, upon return contains an NSError object that describes the problem.

Return Value

YES if the receiver can create a date by parsing string, otherwise NO.

Availability
  • Available in OS X v10.4 and later.
Related Sample Code
Declared In
NSDateFormatter.h

gregorianStartDate

Returns the start date of the Gregorian calendar for the receiver.

- (NSDate *)gregorianStartDate
Return Value

The start date of the Gregorian calendar for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

initWithDateFormat:allowNaturalLanguage:

Initializes and returns an NSDateFormatter instance that uses the OS X v10.0 formatting behavior and the given date format string in its conversions.

- (id)initWithDateFormat:(NSString *)format allowNaturalLanguage:(BOOL)flag
Parameters
format

The format for the receiver. See Data Formatting Guide for a list of conversion specifiers permitted in date format strings.

flag

A flag that specifies whether the receiver should process dates entered as expressions in the vernacular (for example, "tomorrow")—YES means that it should.

Return Value

An initialized NSDateFormatter instance that uses format in its conversions and that uses the OS X v10.0 formatting behavior.

Discussion

NSDateFormatter attempts natural-language processing only after it fails to interpret an entered string according to format. Natural-language processing supports only a limited set of colloquial phrases, primarily in English. It may give unexpected results, and its use is strongly discouraged.

The following example creates a date formatter with the format string (for example) “Mar 15 1994” and then associates the formatter with the cells of a form (contactsForm):

NSDateFormatter *dateFormat = [[NSDateFormatter alloc]
    initWithDateFormat:@"%b %d %Y" allowNaturalLanguage:NO];
[[contactsForm cells] makeObjectsPerformSelector:@selector(setFormatter:)
     withObject:dateFormat];
Special Considerations

You cannot use this method to initialize a formatter with the OS X v10.4 formatting behavior, you must use init.

Availability
  • Available in OS X v10.4 and later.
Related Sample Code
Declared In
NSDateFormatter.h

isLenient

Returns a Boolean value that indicates whether the receiver uses heuristics when parsing a string.

- (BOOL)isLenient
Return Value

YES if the receiver has been set to use heuristics when parsing a string to guess at the date which is intended, otherwise NO.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

locale

Returns the locale for the receiver.

- (NSLocale *)locale
Return Value

The locale for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

longEraSymbols

Returns the long era symbols for the receiver

- (NSArray *)longEraSymbols
Return Value

An array containing NSString objects representing the era symbols for the receiver (for example, {“Before Common Era”, “Common Era”}).

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

monthSymbols

Returns the month symbols for the receiver.

- (NSArray *)monthSymbols
Return Value

An array of NSString objects that specify the month symbols for the receiver.

Availability
  • Available in OS X v10.4 and later.
Related Sample Code
Declared In
NSDateFormatter.h

PMSymbol

Returns the PM symbol for the receiver.

- (NSString *)PMSymbol
Return Value

The PM symbol for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

quarterSymbols

Returns the quarter symbols for the receiver.

- (NSArray *)quarterSymbols
Return Value

An array containing NSString objects representing the quarter symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setAMSymbol:

Sets the AM symbol for the receiver.

- (void)setAMSymbol:(NSString *)string
Parameters
string

The AM symbol for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

setCalendar:

Sets the calendar for the receiver.

- (void)setCalendar:(NSCalendar *)calendar
Parameters
calendar

The calendar for the receiver.

Availability
  • Available in OS X v10.4 and later.
See Also
Declared In
NSDateFormatter.h

setDateFormat:

Sets the date format for the receiver.

- (void)setDateFormat:(NSString *)string
Parameters
string

The date format for the receiver. See Data Formatting Guide for a list of the conversion specifiers permitted in date format strings.

Availability
  • Available in OS X v10.4 and later.
See Also
Declared In
NSDateFormatter.h

setDateStyle:

Sets the date style of the receiver.

- (void)setDateStyle:(NSDateFormatterStyle)style
Parameters
style

The date style of the receiver. For possible values, see NSDateFormatterStyle.

Availability
  • Available in OS X v10.4 and later.
See Also
Declared In
NSDateFormatter.h

setDefaultDate:

Sets the default date for the receiver.

- (void)setDefaultDate:(NSDate *)date
Parameters
date

The default date for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

setDoesRelativeDateFormatting:

Specifies whether the receiver uses phrases such as “today” and “tomorrow” for the date component.

- (void)setDoesRelativeDateFormatting:(BOOL)b
Parameters
b

YES to specify that the receiver should use relative date formatting, otherwise NO.

Discussion

If a date formatter uses relative date formatting, where possible it replaces the date component of its output with a phrase—such as “today” or “tomorrow”—that indicates a relative date. The available phrases depend on the locale for the date formatter; whereas, for dates in the future, English may only allow “tomorrow,” French may allow “the day after the day after tomorrow,” as illustrated in the following example.

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init];
[dateFormatter setTimeStyle:NSDateFormatterNoStyle];
[dateFormatter setDateStyle:NSDateFormatterMediumStyle];
NSLocale *frLocale = [[NSLocale alloc] initWithLocaleIdentifier:@"fr_FR"];
[dateFormatter setLocale:frLocale];
 
[dateFormatter setDoesRelativeDateFormatting:YES];
 
NSDate *date = [NSDate dateWithTimeIntervalSinceNow:60*60*24*3];
NSString *dateString = [dateFormatter stringFromDate:date];
 
NSLog(@"dateString: %@", dateString);
// Output
// dateString: après-après-demain
Availability
  • Available in OS X v10.6 and later.
Declared In
NSDateFormatter.h

setEraSymbols:

Sets the era symbols for the receiver.

- (void)setEraSymbols:(NSArray *)array
Parameters
array

An array containing NSString objects representing the era symbols for the receiver (for example, {“B.C.E.”, “C.E.”}).

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

setFormatterBehavior:

Sets the formatter behavior for the receiver.

- (void)setFormatterBehavior:(NSDateFormatterBehavior)behavior
Parameters
behavior

The formatter behavior for the receiver. For possible values, see NSDateFormatterBehavior.

Availability
  • Available in OS X v10.4 and later.
Related Sample Code
Declared In
NSDateFormatter.h

setGeneratesCalendarDates:

You should not use this method.

- (void)setGeneratesCalendarDates:(BOOL)b
Parameters
b

A Boolean value that specifies whether the receiver generates calendar dates.

Discussion

NSCalendarDate is no longer supported; you should not use this method.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

setGregorianStartDate:

Sets the start date of the Gregorian calendar for the receiver.

- (void)setGregorianStartDate:(NSDate *)date
Parameters
date

The start date of the Gregorian calendar for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setLenient:

Sets whether the receiver uses heuristics when parsing a string.

- (void)setLenient:(BOOL)b
Parameters
b

YES to use heuristics when parsing a string to guess at the date which is intended, otherwise NO.

Discussion

If a formatter is set to be lenient, when parsing a string it uses heuristics to guess at the date which is intended. As with any guessing, it may get the result date wrong (that is, a date other than that which was intended).

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

setLocale:

Sets the locale for the receiver.

- (void)setLocale:(NSLocale *)locale
Parameters
locale

The locale for the receiver.

Availability
  • Available in OS X v10.4 and later.
See Also
Declared In
NSDateFormatter.h

setLongEraSymbols:

Sets the long era symbols for the receiver.

- (void)setLongEraSymbols:(NSArray *)array
Parameters
array

An array containing NSString objects representing the era symbols for the receiver (for example, {“Before Common Era”, “Common Era”}).

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setMonthSymbols:

Sets the month symbols for the receiver.

- (void)setMonthSymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the month symbols for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

setPMSymbol:

Sets the PM symbol for the receiver.

- (void)setPMSymbol:(NSString *)string
Parameters
string

The PM symbol for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

setQuarterSymbols:

Sets the quarter symbols for the receiver.

- (void)setQuarterSymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the quarter symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setShortMonthSymbols:

Sets the short month symbols for the receiver.

- (void)setShortMonthSymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the short month symbols for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

setShortQuarterSymbols:

Sets the short quarter symbols for the receiver.

- (void)setShortQuarterSymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the short quarter symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setShortStandaloneMonthSymbols:

Sets the short standalone month symbols for the receiver.

- (void)setShortStandaloneMonthSymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the short standalone month symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setShortStandaloneQuarterSymbols:

Sets the short standalone quarter symbols for the receiver.

- (void)setShortStandaloneQuarterSymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the short standalone quarter symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setShortStandaloneWeekdaySymbols:

Sets the short standalone weekday symbols for the receiver.

- (void)setShortStandaloneWeekdaySymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the short standalone weekday symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setShortWeekdaySymbols:

Sets the short weekday symbols for the receiver.

- (void)setShortWeekdaySymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the short weekday symbols for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

setStandaloneMonthSymbols:

Sets the standalone month symbols for the receiver.

- (void)setStandaloneMonthSymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the standalone month symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setStandaloneQuarterSymbols:

Sets the standalone quarter symbols for the receiver.

- (void)setStandaloneQuarterSymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the standalone quarter symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setStandaloneWeekdaySymbols:

Sets the standalone weekday symbols for the receiver.

- (void)setStandaloneWeekdaySymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the standalone weekday symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setTimeStyle:

Sets the time style of the receiver.

- (void)setTimeStyle:(NSDateFormatterStyle)style
Parameters
style

The time style for the receiver. For possible values, see NSDateFormatterStyle.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

setTimeZone:

Sets the time zone for the receiver.

- (void)setTimeZone:(NSTimeZone *)tz
Parameters
tz

The time zone for the receiver.

Availability
  • Available in OS X v10.4 and later.
See Also
Declared In
NSDateFormatter.h

setTwoDigitStartDate:

Sets the two-digit start date for the receiver.

- (void)setTwoDigitStartDate:(NSDate *)date
Parameters
date

The earliest date that can be denoted by a two-digit year specifier.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

setVeryShortMonthSymbols:

Sets the very short month symbols for the receiver.

- (void)setVeryShortMonthSymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the very short month symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setVeryShortStandaloneMonthSymbols:

Sets the very short standalone month symbols for the receiver.

- (void)setVeryShortStandaloneMonthSymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the very short standalone month symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setVeryShortStandaloneWeekdaySymbols:

Sets the very short standalone weekday symbols for the receiver.

- (void)setVeryShortStandaloneWeekdaySymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the very short standalone weekday symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setVeryShortWeekdaySymbols:

Sets the vert short weekday symbols for the receiver

- (void)setVeryShortWeekdaySymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the very short weekday symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

setWeekdaySymbols:

Sets the weekday symbols for the receiver.

- (void)setWeekdaySymbols:(NSArray *)array
Parameters
array

An array of NSString objects that specify the weekday symbols for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

shortMonthSymbols

Returns the array of short month symbols for the receiver.

- (NSArray *)shortMonthSymbols
Return Value

An array containing NSString objects representing the short month symbols for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

shortQuarterSymbols

Returns the short quarter symbols for the receiver.

- (NSArray *)shortQuarterSymbols
Return Value

An array containing NSString objects representing the short quarter symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

shortStandaloneMonthSymbols

Returns the short standalone month symbols for the receiver.

- (NSArray *)shortStandaloneMonthSymbols
Return Value

An array of NSString objects that specify the short standalone month symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

shortStandaloneQuarterSymbols

Returns the short standalone quarter symbols for the receiver.

- (NSArray *)shortStandaloneQuarterSymbols
Return Value

An array containing NSString objects representing the short standalone quarter symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

shortStandaloneWeekdaySymbols

Returns the array of short standalone weekday symbols for the receiver.

- (NSArray *)shortStandaloneWeekdaySymbols
Return Value

An array of NSString objects that specify the short standalone weekday symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

shortWeekdaySymbols

Returns the array of short weekday symbols for the receiver.

- (NSArray *)shortWeekdaySymbols
Return Value

An array of NSString objects that specify the short weekday symbols for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

standaloneMonthSymbols

Returns the standalone month symbols for the receiver.

- (NSArray *)standaloneMonthSymbols
Return Value

An array of NSString objects that specify the standalone month symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

standaloneQuarterSymbols

Returns the standalone quarter symbols for the receiver.

- (NSArray *)standaloneQuarterSymbols
Return Value

An array containing NSString objects representing the standalone quarter symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

standaloneWeekdaySymbols

Returns the array of standalone weekday symbols for the receiver.

- (NSArray *)standaloneWeekdaySymbols
Return Value

An array of NSString objects that specify the standalone weekday symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

stringFromDate:

Returns a string representation of a given date formatted using the receiver’s current settings.

- (NSString *)stringFromDate:(NSDate *)date
Parameters
date

The date to format.

Return Value

A string representation of date formatted using the receiver’s current settings.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

timeStyle

Returns the time style of the receiver.

Return Value

The time style of the receiver. For possible values, see NSDateFormatterStyle.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

timeZone

Returns the time zone for the receiver.

- (NSTimeZone *)timeZone
Return Value

The time zone for the receiver.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

twoDigitStartDate

Returns the earliest date that can be denoted by a two-digit year specifier.

- (NSDate *)twoDigitStartDate
Return Value

The earliest date that can be denoted by a two-digit year specifier.

Discussion

If the two-digit start date is set to January 6, 1976, then “January 1, 76” is interpreted as New Year's Day in 2076, whereas “February 14, 76” is interpreted as Valentine's Day in 1976.

The default date is December 31, 1949.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

veryShortMonthSymbols

Returns the very short month symbols for the receiver.

- (NSArray *)veryShortMonthSymbols
Return Value

An array of NSString objects that specify the very short month symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

veryShortStandaloneMonthSymbols

Returns the very short month symbols for the receiver.

- (NSArray *)veryShortStandaloneMonthSymbols
Return Value

An array of NSString objects that specify the very short standalone month symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

veryShortStandaloneWeekdaySymbols

Returns the array of very short standalone weekday symbols for the receiver.

- (NSArray *)veryShortStandaloneWeekdaySymbols
Return Value

An array of NSString objects that specify the very short standalone weekday symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

veryShortWeekdaySymbols

Returns the array of very short weekday symbols for the receiver.

- (NSArray *)veryShortWeekdaySymbols
Return Value

An array of NSString objects that specify the very short weekday symbols for the receiver.

Availability
  • Available in OS X v10.5 and later.
Declared In
NSDateFormatter.h

weekdaySymbols

Returns the array of weekday symbols for the receiver.

- (NSArray *)weekdaySymbols
Return Value

An array of NSString objects that specify the weekday symbols for the receiver.

Availability
  • Available in OS X v10.4 and later.
Related Sample Code
Declared In
NSDateFormatter.h

Constants

NSDateFormatterStyle

The following constants specify predefined format styles for dates and times.

typedef enum {
   NSDateFormatterNoStyle     = kCFDateFormatterNoStyle,
   NSDateFormatterShortStyle  = kCFDateFormatterShortStyle,
   NSDateFormatterMediumStyle = kCFDateFormatterMediumStyle,
   NSDateFormatterLongStyle   = kCFDateFormatterLongStyle,
   NSDateFormatterFullStyle   = kCFDateFormatterFullStyle
} NSDateFormatterStyle;
Constants
NSDateFormatterNoStyle

Specifies no style.

Equal to kCFDateFormatterNoStyle.

Available in OS X v10.4 and later.

Declared in NSDateFormatter.h.

NSDateFormatterShortStyle

Specifies a short style, typically numeric only, such as “11/23/37” or “3:30 PM”.

Equal to kCFDateFormatterShortStyle.

Available in OS X v10.4 and later.

Declared in NSDateFormatter.h.

NSDateFormatterMediumStyle

Specifies a medium style, typically with abbreviated text, such as “Nov 23, 1937” or “3:30:32 PM”.

Equal to kCFDateFormatterMediumStyle.

Available in OS X v10.4 and later.

Declared in NSDateFormatter.h.

NSDateFormatterLongStyle

Specifies a long style, typically with full text, such as “November 23, 1937” or “3:30:32 PM PST”.

Equal to kCFDateFormatterLongStyle.

Available in OS X v10.4 and later.

Declared in NSDateFormatter.h.

NSDateFormatterFullStyle

Specifies a full style with complete details, such as “Tuesday, April 12, 1952 AD” or “3:30:42 PM Pacific Standard Time”.

Equal to kCFDateFormatterFullStyle.

Available in OS X v10.4 and later.

Declared in NSDateFormatter.h.

Discussion

The format for these date and time styles is not exact because they depend on the locale, user preference settings, and the operating system version. Do not use these constants if you want an exact format.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h

NSDateFormatterBehavior

Constants that specify the behavior NSDateFormatter should exhibit.

typedef enum {
   NSDateFormatterBehaviorDefault = 0,
   NSDateFormatterBehavior10_0    = 1000,
   NSDateFormatterBehavior10_4    = 1040,
} NSDateFormatterBehavior;
Constants
NSDateFormatterBehaviorDefault

Specifies default formatting behavior.

Available in OS X v10.4 and later.

Declared in NSDateFormatter.h.

NSDateFormatterBehavior10_0

Specifies formatting behavior equivalent to that in OS X v10.0.

Available in OS X v10.4 and later.

Declared in NSDateFormatter.h.

NSDateFormatterBehavior10_4

Specifies formatting behavior equivalent for OS X v10.4.

Available in OS X v10.4 and later.

Declared in NSDateFormatter.h.

Availability
  • Available in OS X v10.4 and later.
Declared In
NSDateFormatter.h