代码之家  ›  专栏  ›  技术社区  ›  atw

用百分号格式化数字

  •  1
  • atw  · 技术社区  · 6 年前

    如何在电子表格中添加百分比格式。

    在Ruby中,这样做的逻辑方式如下:

    number.to_s + "%"
    

    但是,我希望避免表示 number as a string 我一直在尝试 number_format 使用电子表格gem。

    我尝试过以下方法:

    percent_format     = Spreadsheet::Format.new :number_format => '###000 %'
    
    percent_format     = Spreadsheet::Format.new :number_format => '#0 %'
    

    导致(分别):

    7500%

    7500%

    格式启用的数字是75,因此它就像百分号也象征着“00”。

    我还询问了Gems Github问题部分: https://github.com/zdavatz/spreadsheet/issues/212

    2 回复  |  直到 6 年前
        1
  •  1
  •   iGian    6 年前

    我没有测试,但我觉得你应该通过0.75: (number/100.0)

        2
  •  1
  •   Alexander Sysuiev    6 年前

    如果您使用的是rails,则可以使用 proper number helper

    或者,您可以尝试通过Ruby格式化程序执行此操作:

    '%.2f%' % 1.23456 => 
    "1.23%"
    

    如果只需要一个不带百分号的四舍五入数字:

    33.22212323.round(2) => 33.22
    33.round(2) => 33.0