一、使用內(nèi)建函數(shù) c
特點(diǎn):
不管其表現(xiàn)形式是怎樣的(
例如"123,456.123,456"、 "123 456.123 456"、 "000 123 456.123 456 000"、 "123,456.123 456"、 "1,2345,6.123456")
, 只要小數(shù)分割符是'.' 它就能轉(zhuǎn)化成計(jì)算機(jī)能夠識(shí)別的字符串形式,而且都是123456.123456,計(jì)算機(jī)處理的時(shí)候是沒(méi)有那些所謂的千位分隔符的(空格或逗號(hào)),而且計(jì)算機(jī)支持的最大的小數(shù)點(diǎn)后面的位數(shù)是16位,目前來(lái)說(shuō),已經(jīng)夠我們用了。
用法:
假設(shè)strmun是一個(gè)字符串形式的數(shù)字,則可以這樣寫(xiě) ${strnum?c},例如${"123,456.123,456"?c} 值為123456.123456
可能用處:
對(duì)一些表單允許用戶(hù)按照個(gè)人習(xí)慣輸入數(shù)字,提交的時(shí)候統(tǒng)一轉(zhuǎn)換
二、使用預(yù)定義的數(shù)字格式
有四種預(yù)定義的數(shù)字格式,分別是computer(跟內(nèi)建函數(shù)c功能一樣,用法不一樣)、currency(貨幣格式)、number(數(shù)字格式)、percent(百分比形式)
特點(diǎn):
這些格式的明確含義是本地化(國(guó)家)指定的,受 Java 平臺(tái)安裝環(huán)境所控制,而不是 FreeMarker,所以不建議用這些函數(shù),而且受默認(rèn)數(shù)字格式的影響,用法不靈活。
三、使用類(lèi)似于Java中數(shù)字格式語(yǔ)法形式
特點(diǎn):
例如"0.#",左邊的'0'的個(gè)數(shù)代表整數(shù)部分最少為多少位,右邊'#"的個(gè)數(shù)代表小數(shù)部分最多為多少位;例如",##0.0#"表示整數(shù)部分的千位分割符是',',小數(shù)部分最多保留兩位,最少保留一位;例如"0.##%"以百分比的形式表示,小數(shù)部分最多兩位。
用法:
假設(shè)strnum是一個(gè)數(shù)字,則可以這樣寫(xiě)${strnum?string(",##0.0#")} ,例如${123456.123456?string(",##0.0#")} 值為123,456.12
注意:
數(shù)字格式是本地化敏感的,不過(guò)我們一般都會(huì)給freemarker設(shè)置默認(rèn)的本地化語(yǔ)言,問(wèn)題不大。
可能用處:
當(dāng)在某一個(gè)地方突然要用到數(shù)字格式時(shí),調(diào)用 string 函數(shù)是可以的,當(dāng)在很多地方都需要用到數(shù)字格式是,這樣處理太麻煩了,可以考慮設(shè)置默認(rèn)的數(shù)字格式化形式
四、局部設(shè)置
特點(diǎn):
如果在某個(gè)頁(yè)面,或者某幾個(gè)頁(yè)面(其它頁(yè)面可import進(jìn)來(lái)),用到的數(shù)字格式化是相同的,可考慮統(tǒng)一配置數(shù)字的格式化形式
用法:
只需在用到需要格式化的數(shù)字之前 設(shè)置就可以了,格式如下: <#setting number_format=",##0.##"> 其中",##0.##"的內(nèi)容是采用類(lèi)似于java中數(shù)字格式的語(yǔ)法形式,也就是以上的第三點(diǎn)。
注意:
如果用在一個(gè)頁(yè)面,則整個(gè)頁(yè)面默認(rèn)就是那種格式,除非用string函數(shù)覆蓋了默認(rèn)的格式,同樣的,如果放在一個(gè)公共的頁(yè)面,其它頁(yè)面只要include它,也會(huì)是同樣的格式。
五、全局設(shè)置
特點(diǎn):
在所有的頁(yè)面都默認(rèn)提供數(shù)字的格式化形式
用法
(針對(duì)spring):在freemarker的配置文件中設(shè)置其默認(rèn)的數(shù)字格式化形式,如下:
代碼如下
< property name = "freemarkerSet
< props>
.....
< prop key = "number_format"> 0.##
......
六、舍入處理
有幾種舍入處理方式,分別是 round,floor,ceiling 和string("0")
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注