dongyao4419
2019-07-16 04:11
浏览 266
已采纳

用千位逗号golang格式化字符串格式

I have this string "1,090"

I want to convert it to float

v := "1,090"
s, err := strconv.ParseFloat(v, 32)
if  err != nil {
    fmt.Printf("err: %s
", err)
    return
}
fmt.Printf("%T, %v
", s, s)

But it returns an error:

//err: strconv.ParseFloat: parsing "1,090": invalid syntax

So anybody know to convert it to float?

图片转代码服务由CSDN问答提供 功能建议

我有此字符串“ 1,090”

我要将其转换为 float

  v:=“ 1,090” 
s,err:= strconv.ParseFloat(v,32)
if err!= nil {
 fmt.Printf(“ err  :%s 
“,err)
返回
} 
fmt.Printf(”%T,%v 
“,s,s)
   
 
 

但返回错误:

  // err:strconv.ParseFloat:解析“ 1,090”:无效语法
   
 
  

所以有人知道将其转换为浮点型吗?

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • doubijiao2094 2019-07-16 04:25
    已采纳

    The reason it is failed because "1,090" has , comma in it. You have to remove the , from the string before you use strconv.ParseFloat(v, 32). One way to remove comma is by using strings.Replace():

    v := "1,090"
    
    v = strings.Replace(v, ",", "", -1)
    
    s, err := strconv.ParseFloat(v, 32)
    if  err != nil {
            fmt.Printf("err: %s
    ", err)
            return
    }
    fmt.Printf("%T, %v
    ", s, s)
    
    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题