NSDateIntervalFormatter
NSDateIntervalFormatter
объект создает читаемые пользователем строки из пар дат. Использование средство форматирования интервала даты для создания читаемых пользователем строк формы <запускается> -
<конец> для интерфейса Вашего приложения, где <запускаются> и <конец>, является значениями даты, которые Вы предоставляете. Средство форматирования использует локаль и информацию о языке, вместе с пользовательскими параметрами форматирования, для определения содержания получившей строки. Можно указать различные стили для получения информации о дате и времени в каждом значении даты.
Для использования этого класса создайте экземпляр, сконфигурируйте его свойства и вызовите stringFromDate:toDate:
метод для генерации строки. Свойства этого класса позволяют Вам сконфигурировать календарь и указать стиль для применения к значениям даты и времени. Учитывая текущую дату от 16 января 2015, Конфигурируя объект средства форматирования показывает, как сконфигурировать средство форматирования, возражают и генерируют строку “16.01.15 - 17.01.15”.
NSDateIntervalFormatter* formatter = [[NSDateIntervalFormatter alloc] init];
formatter.dateStyle = NSDateIntervalFormatterShortStyle;
formatter.timeStyle = NSDateIntervalFormatterNoStyle;
// Create two dates that are exactly 1 day apart.
NSDate* startDate = [NSDate date];
NSDate* endDate = [NSDate dateWithTimeInterval:86400 sinceDate:startDate];
// Use the configured formatter to generate the string.
NSString* outputString = [formatter stringFromDate:startDate toDate:endDate];
stringFromDate:toDate:
метод можно вызвать безопасно от любого потока Вашего приложения. Также безопасно совместно использовать единственный экземпляр этого класса от многократных потоков с протестом, что Вы не должны изменять конфигурацию объекта, в то время как другой поток использует его для генерации строки.
Наследование
-
NSObject
-
NSFormatter
-
NSDateIntervalFormatter
-
NSObject
-
NSFormatter
-
NSDateIntervalFormatter
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCoding
-
NSCopying
-
NSObjectProtocol
-
Печатаемый
-
NSCoding
-
NSCopying
-
NSObject
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.10 и позже.
-
Возвращает отформатированную строку на основе указанного запуска и даты окончания.
Объявление
Параметры
fromDate
Дата начала. Эта дата кажется первой в получившей строке.
toDate
Дата окончания. Эта дата появляется в последний раз после дефиса в получившей строке.
Возвращаемое значение
Отформатированная строка, представляющая указанный интервал даты.
Обсуждение
Средство форматирования включает обоих
fromDate
иtoDate
в получившей строке только, когда существует действительно различие в их значениях для гарантирования включения обоих. Если различие в дате и времени не может быть соответственно выведено на экран, средство форматирования выводит на экран одно значение даты. Например, еслиtimeStyle
свойство было установлено вNSDateIntervalFormatterNoStyle
, эти две даты должны были бы быть на расстоянии по крайней мере в один день для обоих, чтобы быть выведенными на экран.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
-
Стиль для использования при форматировании дня, месяца и информации года.
Объявление
Swift
var dateStyle: NSDateIntervalFormatterStyle
Objective C
@property NSDateIntervalFormatterStyle dateStyle
Обсуждение
Установите это свойство в надлежащее значение прежде, чем генерация в соответствии со строковыми значениями. Значение по умолчанию этого свойства
NSDateIntervalFormatterNoStyle
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
-
Стиль для использования при форматировании часа, минуты и второй информации.
Объявление
Swift
var timeStyle: NSDateIntervalFormatterStyle
Objective C
@property NSDateIntervalFormatterStyle timeStyle
Обсуждение
Установите это свойство в надлежащее значение прежде, чем генерация в соответствии со строковыми значениями. Значение по умолчанию этого свойства
NSDateIntervalFormatterNoStyle
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
-
dateTemplate dateTemplate
СвойствоШаблон для форматирования одного значения даты и времени.
Обсуждение
Используйте эту строку для указания пользовательского фиксированного формата для каждого из значений даты и времени. Строка, которую Вы указываете, основывается на Техническом стандарте № 35 Unicode, использующем символы для представления дня, времени, года, часа, минуты и других частей информации времени или даты.
Если Вы не присваиваете значение этой строке, объект средства форматирования автоматически обновляет строку на основе значений в
dateStyle
иtimeStyle
свойства.Для получения информации о том, как определить пользовательскую строку форматирования, посмотрите Средства форматирования Даты в Руководстве по Форматированию данных.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
-
Календарь для использования для значений даты.
Объявление
Swift
@NSCopying var calendar: NSCalendar?
Objective C
@property(copy) NSCalendar *calendar
Обсуждение
Значение по умолчанию этого свойства является календарем, связанным с током
locale
объект. Можно изменить это значение для использования различного календаря для интерпретации дат.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
-
Локаль для использования при форматировании значений даты и времени.
Обсуждение
Значение по умолчанию этого свойства является локалью текущего пользователя, которая доступна от
currentLocale
методNSLocale
. Можно изменить это значение на различную локаль для генерации строк на основе той локали.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
-
часовой пояс часовой пояс
СвойствоЧасовой пояс, с которым можно указать временные стоимости.
Объявление
Swift
@NSCopying var timeZone: NSTimeZone?
Objective C
@property(copy) NSTimeZone *timeZone
Обсуждение
Значение по умолчанию этого свойства является часовым поясом по умолчанию для текущего пользователя, который доступен от
defaultTimeZone
методNSTimeZone
. Можно изменить это значение на различный часовой пояс для генерации строк на основе того часового пояса.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
-
Стили форматирования для отдельных значений даты и времени.
Объявление
Swift
enum NSDateIntervalFormatterStyle : UInt { case NoStyle case ShortStyle case MediumStyle case LongStyle case FullStyle }
Objective C
typedef enum NSDateIntervalFormatterStyle : NSUInteger { NSDateIntervalFormatterNoStyle = 0, NSDateIntervalFormatterShortStyle = 1, NSDateIntervalFormatterMediumStyle = 2, NSDateIntervalFormatterLongStyle = 3, NSDateIntervalFormatterFullStyle = 4 } NSDateIntervalFormatterStyle;
Константы
-
NoStyle
NSDateIntervalFormatterNoStyle
Никакая информация для даты или время. Используйте этот стиль, когда Вы не захотите включать дату или информацию времени в получившей строке.
Доступный в OS X v10.10 и позже.
-
ShortStyle
NSDateIntervalFormatterShortStyle
Сокращенный формат даты или формат времени.
Для дат этот стиль выводит на экран день, месяц и год в числовой форме с помощью формата, подходящего для текущей локали. Например, форматирование даты 15 января 2015 с этим стилем приводит к значению «1/15/15» для английского США и значения «15.1.15» для немецкого языка.
В течение многих времен этот стиль выводит на экран часы и минуты с помощью формата, подходящего для текущей локали. Например, 12 часов и 33 минуты днем с помощью 12-часовых часов приводят к значению «12:33» для английского формата США и “12:33 nachm”. для немецкого языка.
Доступный в OS X v10.10 и позже.
-
MediumStyle
NSDateIntervalFormatterMediumStyle
Дата средней длины или формат времени.
Для дат этот стиль выводит на экран числовой день и год и сокращенное написание месяца с помощью формата, подходящего для текущей локали. Например, форматирование даты 15 января 2015 с этим стилем приводит к значению “Ян 15, 2015” для английского США и значения “15. Январь 2015” для немецкого языка.
В течение многих времен этот стиль выводит на экран часы, минуты и секунды с помощью формата, подходящего для текущей локали. Например, 12 часов, 33 минуты и 29 секунд днем с помощью 12-часовых часов приводят к значению «12:33:29» для английского языка США 12-часовой формат и “12:33:29 nachm”. для немецкого языка.
Доступный в OS X v10.10 и позже.
-
LongStyle
NSDateIntervalFormatterLongStyle
Длинный формат даты длины или формат времени.
Для дат этот стиль выводит на экран числовой день и год и разъясненную версию месяца с помощью формата, подходящего для текущей локали. Например, форматирование даты 15 января 2015 с этим стилем приводит к значению «15 января 2015» для английского США и значения “15. Januar 2015” для немецкого языка.
В течение многих времен этот стиль выводит на экран часы, минуты, секунды и информацию о часовом поясе с помощью формата, подходящего для текущей локали. Например, 12 часов, 33 минуты и 29 секунд днем с помощью 12-часовых часов и Зоны тихоокеанского времени приводят к значению «12:33:29 PST» для английского языка США без перехода на летнее время в действительности и “12:33:29 GMT 8” для немецкого языка.
Доступный в OS X v10.10 и позже.
-
FullStyle
NSDateIntervalFormatterFullStyle
Полностью разъяснил формат даты или формат времени.
Для дат этот стиль выводит на экран числовой день и год и разъясненную версию месяца и день недели с помощью формата, подходящего для текущей локали. Например, форматирование даты 15 января 2015 с этим стилем приводит к значению «четверг, 15 января 2015» для английского США и значения “Donnerstag, 15. Januar 2015” для немецкого языка.
В течение многих времен этот стиль выводит на экран часы, минуты, секунды и разъясненную информацию о часовом поясе с помощью формата, подходящего для текущей локали. Например, 12 часов, 33 минуты и 29 секунд днем с помощью 12-часовых часов и Зоны тихоокеанского времени приводят к значению “Тихоокеанское время 12:33:29” для английского языка США без перехода на летнее время в действительности и “12:33:29 Nordamerikanische Westküsten-Normalzeit” для немецкого языка.
Доступный в OS X v10.10 и позже.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
-