datePicker에서 NSDate로 가져온 날짜 문자열을 변환 할 때 문제가 있습니다.Swift Date Picker 문자열을 NSDate로 변환하여 1 년 단축했습니다.
예를 들어 날짜 선택 도구에서 23/12/1990으로 날짜를 선택한 다음 NSDate로 변환하면 결과가 달라집니다. 그것은 1989-12-23 23:00:00 UTC를 보여줍니다.
POST 요청을 할 때 날짜를 하루, 한 달, 다른 연도의 세 문자열로 보내야합니다. 그래서 내 POST 요청에 대한 내 NSDate 문자열로 다시 변환 오전. 결과가 다음과 같이 나타납니다. 1989-12-24
내 모델에서 dateOfBirth가 NSDate로 설정되어 있기 때문에 변경할 수 없습니다.이 설정을 변경하면 많은 다른 문제가 발생합니다.
마지막으로 POST 요청이 성공한 후 일, 달 및 연도에 대한 문자열을 얻습니다. NSDate로 다시 설정해야합니다. 어떤 결과가 - 1989-12-24 - NSDate에서 변환 한 문자열과 동일합니다.
누구든지이 문제를 해결할 수 있습니까? 내 양식에서 저장을 클릭하면 다음
내 코드입니다 - 여기
var birthDate: NSDate?
if let dateOfBirthText = dateOfBirth.text {
let dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "dd/MM/YYYY"
birthDate = dateFormatter.dateFromString(dateOfBirthText)
}
내가 POST 요청 중에 문자열이있는 NSDate 변환
var dateFormatter = NSDateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
var dateString = dateFormatter.stringFromDate(userPersonalData.dateOfBirth!)
let individualDateComponents = dateString.componentsSeparatedByString("-")
let dobYear = "\(individualDateComponents[0])"
let dobMonth = "\(individualDateComponents[1])"
let dobDay = "\(individualDateComponents[2])"
문제는 'YYYY'사용입니다. 이 질문은 매년 발생합니다. – rmaddy
@rmaddy 두 가지 문제가 있다고 생각합니다. – Sulthan
@Sulthan : 고맙습니다. 지금은 작동하지만 내 textField에 대한 선택보기를 채울 때 내 dateOfBirth 문자열보다 하루가 짧습니다. 바보 같은 질문에 대한 죄송합니다. 나는 내가 잘못하고있는 곳을 알아낼 수 없다. –