-
728x90반응형
오랜만에 쓰는 글이다.
오늘은 개인적으로 프로젝트를 하다가 마주한 문제를 해결한 내용을 포스팅 하려고 한다. 난 알잘딱을 좋아하기 때문에 바로 본론으로 들어가겠다.
포스팅 날짜가 잘못되어 출력됨
화면의 출력되는 날짜 Api에서 응답받은 문자열은 이렇게 출력이 됨 Date()를 String으로 그대로 출력하게 되면 문제가 생겨서 DateFormat이 잘못되었나 해서 확인해 보았다. 하지만 육안으로 보기에는 문제는 없어 보였지만..
func StringToDate(stringDate:String) -> Date{ let dateFormatter = DateFormatter() dateFormatter.dateFormat = "yyyy-mm-dd'T'hh:mm:ss" //"2023-03-04T05:34:50" dateFormatter.locale = Locale(identifier: "ko_KR") dateFormatter.timeZone = TimeZone(abbreviation: "KST") //print(dateFormatter.date(from: stringDate)?.addingTimeInterval(32400) ?? Date()) return dateFormatter.date(from: stringDate)?.addingTimeInterval(32400) ?? Date() }
여기서
dateFormatter.dateFormat = "yyyy-mm-dd'T'hh:mm:ss" //월 출력 부분이 대문자 MM이 아닌 mm으로 되어있음
너무나 멍청한 행동이였지만 대문자와 소문자가 구분되어있는 이유를 생각하지 않았다… 물론 이런 사소한걸로 완전 다른 결과가 나올줄은 몰랐던 내가 경솔했다.
그리고 코드 부분에 .addingTimeInterval(32400) ?? Date() 이부분이 추가가 되있는데 저 시간 자체가 UTC 기준이라 출력하면 9시간 전으로 나오게 된다. 피드를 보면 상대시간으로 표기했기 때문에 시간이 다르게 나오는 것을 볼 수 있다. 그래서 일단 9시간을 추가하여 사용하기로 했다..
'프로그래밍 > TroubleShooting&Solution' 카테고리의 다른 글
[TroubleShooting] - Could not insert new outlet connection 잇슈(UIKit) (0) 2024.01.12 [ToubleShooting] - couldn't generate swift representation error (from sourcekit) (0) 2023.06.13 [ToubleShooting] - 이미지 리스트 렉걸림 (0) 2023.03.09 [Solution] - Swift 쿠키 불러오기 (0) 2023.03.09 [Solution] SwiftUI 테이블 표시줄 제거 (0) 2022.07.14