[swift] 문자열의 형식 변환하기

많은 경우에 문자열을 다른 형식으로 변환해야 할 때가 있습니다. 특히 개발 작업 중에는 날짜, 숫자, 금액 등의 데이터를 다루는 경우가 많아 문자열의 형식을 변환하는 일이 흔합니다. Swift에서는 다양한 방법으로 문자열의 형식을 변환할 수 있습니다.

숫자를 문자열로 변환하기

숫자를 문자열로 변환하는 가장 간단한 방법은 String 이니셜라이저를 사용하는 것입니다.

let number = 123
let stringFromNumber = String(number)
print(stringFromNumber) // "123"

날짜를 문자열로 변환하기

Date 형식의 데이터를 문자열로 변환하려면 DateFormatter를 사용해야 합니다.

let date = Date()
let dateFormatter = DateFormatter()
dateFormatter.dateFormat = "yyyy-MM-dd"
let stringFromDate = dateFormatter.string(from: date)
print(stringFromDate) // "2023-12-31"

문자열을 숫자로 변환하기

문자열을 숫자로 변환하려면 Int나 Double 등의 이니셜라이저를 사용합니다.

let string = "456"
if let numberFromString = Int(string) {
    print(numberFromString) // 456
} else {
    print("Invalid input")
}

JSON 문자열을 디코딩하기

JSON 형식의 문자열을 디코딩하여 Swift의 데이터 형식으로 변환하려면 Codable 프로토콜과 JSONDecoder를 사용합니다.

let json = """
{
    "name": "John",
    "age": 30
}
"""
struct Person: Codable {
    let name: String
    let age: Int
}

if let jsonData = json.data(using: .utf8) {
    do {
        let person = try JSONDecoder().decode(Person.self, from: jsonData)
        print(person.name) // "John"
        print(person.age) // 30
    } catch {
        print(error)
    }
}

위의 예시는 Swift에서 문자열의 형식을 변환하는 몇 가지 방법을 보여줍니다. 각각의 상황에 맞게 적절한 방법을 선택하여 사용하면 됩니다.

참고 자료