更改时区我有一个小的IOS程序和获得从数据库服务器的时间。我想将其转换为用户localtime(我总是知道服务器的时区)。在一个文本框
我一直在玩更换一块小时的字符串,但似乎像一个坏主意。
在C#中我将字符串转换成DateTime和服务器时间和本地时间之间的性差异添加小时,但我根本无法弄清楚如何做到这一点在的ObjectiveC。
所以任何人都可以给一些提示?日期/时间字符串我从服务器获取如下:
2011-02-27 12时10分02秒
更改时区我有一个小的IOS程序和获得从数据库服务器的时间。我想将其转换为用户localtime(我总是知道服务器的时区)。在一个文本框
我一直在玩更换一块小时的字符串,但似乎像一个坏主意。
在C#中我将字符串转换成DateTime和服务器时间和本地时间之间的性差异添加小时,但我根本无法弄清楚如何做到这一点在的ObjectiveC。
所以任何人都可以给一些提示?日期/时间字符串我从服务器获取如下:
2011-02-27 12时10分02秒
我会使用NSDateFormatter将字符串中的日期转换为NSDate对象。您可以使用dateByAddingTimeInterval方法在您的小时内添加。另外NSCalendar具有更高级的功能来增加时间间隔。
我相信这应该当地时间工作:
NSDateFormatter *dateFormatter = [NSDateFormatter alloc] init];
NSLocale *serverLocale = [NSLocale alloc] initWithLocaleIdentifier:@"en_US"];//Change to Server Locale
[dateFormatter setLocale:serverLocale];
[serverLocale release];
[dateFormatter setDateFormat:@"YYYY-MM-DD HH:MM:SS"];
NSDate *date = [dateFormatter dateFromString:@"2011-02-27 12:10:02 "];
//Replace the locale below with what you need
NSString *dateString = [date descriptionWithLocale:[NSLocale currentLocale]];
[dateFormatter release];
textField.text = dateString;
我想你misunderstod的问题,我需要转换为TimeDifference添加到我的时间。但是,感谢你的代码,我很高兴看到如何以本地格式显示直方图。 – user404 2011-02-28 21:08:40
谢谢你,给了我所需要的提示,我结束了使用下面的代码:\t \t \t \t \t \t \t的NSDate *日期= [dateFormatter dateFromString:myString的]。 \t \t \t \t \t \t \t NSTimeZone * TZ = [NSTimeZone localTimeZone]; \t \t \t \t \t \t \t NSTimeInterval interval = [tz secondsFromGMT]; \t \t \t \t \t \t \t date = [date addTimeInterval:interval]; – user404 2011-02-28 21:06:40