Quantcast
Channel: Recent Questions - Stack Overflow
Viewing all articles
Browse latest Browse all 12141

Floating point precision issue when decoding json from string to double

$
0
0

I would like to convert a string in a json format to a request payload through swift Codable. However, after converting, the value turns from 24.21 to24.210000000000001. how should I fix it?

public func alertData(json: String) throws -> Data? {    guard let jsonData = try json.data(using: .utf8) else {        return nil    }    return jsonData}struct Payload: Codable {    var order = OrderData()}struct OrderData: Codable {    var amount: Double?}let json = "{\"order\": {\"amount\": 24.21}}"let data = try alertData(json: json)!let payload = try JSONDecoder().decode(Payload.self, from: data)print(payload) /// Payload(order: prog.OrderData(amount: Optional(24.210000000000001)))

Viewing all articles
Browse latest Browse all 12141

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>