当语言改变时,字符串到日期转换不起作用

时间:2014-10-29 12:30:11

标签: ios nsdate nsdateformatter nslocale

嗨,这是我的代码,当设备语言是英文时工作正常,但是当我更改法语的语言时,日期变为零..任何人都可以帮我解决这个问题。

NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
[dateFormat setDateFormat:@"EEE, d LLLL yyyy HH:mm:ss Z"];
[dateFormat setLocale:[[NSLocale alloc] initWithLocaleIdentifier:NSLocaleIdentifier]];
birthdayDate = [dateFormat dateFromString:birthdayStr]; //birthdayStr it contains Date string.

2 个答案:

答案 0 :(得分:3)

        NSDateFormatter *dateFormat = [[NSDateFormatter alloc] init];
        [dateFormat setDateFormat:@"EEE, d LLL yyyy HH:mm:ss Z"];
        [dateFormat setLocale:[[NSLocale alloc] initWithLocaleIdentifier:@"en_US"]]; //This is the Stuff

我得到了解决方案。上面的代码对我来说很好..

答案 1 :(得分:0)

<强>夫特

let dateFormatter = DateFormatter()
dateFormatter.locale = NSLocale(localeIdentifier: "en_US") as Locale!
dateFormatter.dateFormat = "EEE, d LLL yyyy HH:mm:ss Z"
let resultsDate = dateFormatter.string(from: date)