Swift实现的中国居民身份证号码校验工具,检查其是否符合国家标准。
中文 | English
计算规则参考国家标准文件:
- 标准号:GB 11643-1999:公民身份证号码
Cocoapods
pod 'IDCard', '~> 1.0'
Swift Package Manager
dependencies: [
.package(url: "https://github.com/bluesky335/IDCard.git", .upToNextMajor(from: "1.0"))
]
let card = IDCard(number:"11010519491231002X")
if card.isValid {
print("✅:\(card.birthday.date)-\(card.birthday.year)-\(card.birthday.month)-\(card.birthday.day),\(card.gender)")
}else{
print("❌")
}
// 2020-04-07 15:52:52
let date = Date(timeIntervalSince1970: 1586245972)
let formater = DateFormatter()
formater.timeZone = .init(secondsFromGMT: 8 * 60 * 60)
let cardNumber1 = IDCard.createIDCardNumber(birthday: date, dateFormater: formater)
let cardNumber2 = IDCard.createIDCardNumber(gender: .female)
let cardNumber3 = IDCard.createIDCardNumber(cityCode: "500232")