Ios 如何在Swift 3中将时间选择器转换为24小时格式?

Ios 如何在Swift 3中将时间选择器转换为24小时格式?,ios,time,datepicker,swift3,Ios,Time,Datepicker,Swift3,我有下面这些时间选择器代码 例如,我得到了一个输出“下午1:00” import UIKit class ViewController: UIViewController { @IBOutlet var timeTxt: UITextField! let time_picker = UIDatePicker() var time: String! override func viewDidLoad(){ super.viewDidLoad()

我有下面这些时间选择器代码

例如,我得到了一个输出“下午1:00”

import UIKit

class ViewController: UIViewController {
    @IBOutlet var timeTxt: UITextField!
    let time_picker  = UIDatePicker()
    var time: String!

    override func viewDidLoad(){
        super.viewDidLoad()
        displayTime()
    }

    func displayTime(){
        let toolbar_time = UIToolbar()
        toolbar_time.sizeToFit()

        let doneButton_time = UIBarButtonItem(barButtonSystemItem: .done, target: nil, action: #selector(selectTime))
        toolbar_time.setItems([doneButton_time], animated: false)

        timeTxt.inputAccessoryView = toolbar_time
        timeTxt.inputView = time_picker
    }

    func selectTime() {

        let timeFormatter = DateFormatter()
        timeFormatter.dateStyle = .none
        timeFormatter.dateFormat = "HH:mm a"
        timeFormatter.timeStyle = .short

        timeTxt.text = timeFormatter.string(from: time_picker.date)
        self.view.endEditing(true)
    }
}
但我的目标是将时间值“1:00pm”作为字符串类型存储到数据库中

我想摆脱:“13:00到“1300只”

有人能帮忙吗


谢谢。

要更改时间格式,请转到设置->常规->日期和时间,并启用24小时时间开关,它将在日期选择器中显示24小时时间格式

func selectTime() {

    let timeFormatter = DateFormatter()
    timeFormatter.dateFormat = "hmm" // set this date format string
    timeTxt.text = timeFormatter.string(from: time_picker.date)
    self.view.endEditing(true)
}

timeFormatter.dateFormat=“HHmm”
有什么问题吗?有没有办法从时间值中去掉分号?我的意思是1点到1300点,不是13点
让timeFormatter=DateFormatter()timeFormatter.dateFormat=“HHmm”timeFormatter.string(from:Date())
适用于meBTW
“HH:mm a”
是错误的。HH表示00-23。对于AM/PM,您必须使用h或hh。当使用dateFormat属性时,不应该设置dateStyle或timeStyle。我明白了。谢谢你的回答:)。。它起作用了
timeFormatter.locale = Locale(identifier: "en_GB")