亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JSP > 正文

freemarker數字格式化的詳細解析

2024-09-05 00:18:10
字體:
來源:轉載
供稿:網友

  今天小編跟大家分享一篇關于freemarker數字格式化的詳細解析,感興趣的朋友跟小編一起來了解一下吧!

  一、使用內建函數c

  特點:

  不管其表現形式是怎樣的(例如"123,456.123,456"、"123456.123456"、"000123456.123456000"、"123,456.123456"、"1,2345,6.123456"),只要小數分割符是'.'它就能轉化成計算機能夠識別的字符串形式,而且都是123456.123456,計算機處理的時候是沒有那些所謂的千位分隔符的(空格或逗號),而且計算機支持的最大的小數點后面的位數是16位,目前來說,已經夠我們用了。

  用法:

  假設strmun是一個字符串形式的數字,則可以這樣寫${strnum?c},例如${"123,456.123,456"?c}值為123456.123456

  可能用處:

  對一些表單允許用戶按照個人習慣輸入數字,提交的時候統一轉換

  二、使用預定義的數字格式

  有四種預定義的數字格式,分別是computer(跟內建函數c功能一樣,用法不一樣)、currency(貨幣格式)、number(數字格式)、percent(百分比形式)

  特點:

  這些格式的明確含義是本地化(國家)指定的,受Java平臺安裝環境所控制,而不是FreeMarker,所以不建議用這些函數,而且受默認數字格式的影響,用法不靈活。

  三、使用類似于Java中數字格式語法形式

  特點:

  例如"0.#",左邊的'0'的個數代表整數部分最少為多少位,右邊'#"的個數代表小數部分最多為多少位;例如",##0.0#"表示整數部分的千位分割符是',',小數部分最多保留兩位,最少保留一位;例如"0.##%"以百分比的形式表示,小數部分最多兩位。

  用法:

  假設strnum是一個數字,則可以這樣寫${strnum?string(",##0.0#")},例如${123456.123456?string(",##0.0#")}值為123,456.12

  注意:

  數字格式是本地化敏感的,不過我們一般都會給freemarker設置默認的本地化語言,問題不大。

  可能用處:

  當在某一個地方突然要用到數字格式時,調用string函數是可以的,當在很多地方都需要用到數字格式是,這樣處理太麻煩了,可以考慮設置默認的數字格式化形式

  四、局部設置

  特點:

  如果在某個頁面,或者某幾個頁面(其它頁面可import進來),用到的數字格式化是相同的,可考慮統一配置數字的格式化形式

  用法:

  只需在用到需要格式化的數字之前設置就可以了,格式如下:其中",##0.##"的內容是采用類似于java中數字格式的語法形式,也就是以上的第三點。

  注意:

  如果用在一個頁面,則整個頁面默認就是那種格式,除非用string函數覆蓋了默認的格式,同樣的,如果放在一個公共的頁面,其它頁面只要include它,也會是同樣的格式。

  五、全局設置

  特點:

  在所有的頁面都默認提供數字的格式化形式

  用法

  (針對spring):在freemarker的配置文件中設置其默認的數字格式化形式,如下:

  復制代碼 代碼如下:

  

  

  .....

  0.##

  ......

  

  

  六、舍入處理

  有幾種舍入處理方式,分別是 round,floor,ceiling 和string("0")

  特點:

  前面三種,從字面上很好理解,我們也經常使用,要說的最后一種,先看一個例子1.5?string("0")和2.5?string("0") 的值都是2 說明如下:

  在金融和統計學中,四舍五入都是根據所謂的一半原則,這就意味著對最近的“鄰居”進行四舍五入,除非離兩個鄰居距離相等,這種情況下,它四舍五入到偶數的鄰居。如果你注意看 1.5 和 2.5 的四舍五入的話,這在上面的示例中是可以看到的,兩個都被四舍五入到2,因為 2 是偶數,但 1 和 3 是奇數。

  用法:假設strnum是一個數字,則可以這樣寫${strnum?round(floor/ceiling)} 或者${strmun?string("0")}

  可能用法:

  可用在一些對數字精確度不高的情況(分頁處理時也許有用),一些對小數敏感的,還是用 string函數

  例如:

  復制代碼 代碼如下:

  ${num?string('0.00')}

  如果小數點后不足兩位,用 0 代替

  復制代碼 代碼如下:

  ${num?string('#.##')}

  如果小數點后多余兩位,就只保留兩位,否則輸出實際值

  輸出為:1239765.46

  復制代碼 代碼如下:

  ${num?string(',###.00')}

  輸出為:1,239,765.46

  整數部分每三位用 , 分割,并且保證小數點后保留兩位,不足用 0 代替

  復制代碼 代碼如下:

  ${num?string(',###.##')}

  輸出為:1,239,765.46

  整數部分每三位用 , 分割,并且小數點后多余兩位就只保留兩位,不足兩位就取實際位數,可以不不包含小數點

  復制代碼 代碼如下:

  ${num?string('000.00')}

  輸出為:012.70

  整數部分如果不足三位(000),前面用0補齊,否則取實際的整數位

  復制代碼 代碼如下:

  ${num?string('###.00')}

  等價于

  復制代碼 代碼如下:

  ${num?string('#.00')}

  輸出為:12.70

  freemarker數字格式化帶來的操作問題

  freemarker在解析數據格式的時候,自動默認將數字按3為分割(1,000),這個問題給操作帶來一定的額外處理復雜度,解決方法有如下幾種:

  1、在模板中直接加.toString()轉化數字為字符串,如:

  復制代碼 代碼如下:

  ${languageList.id.toString()};

  2、在freemarker配置文件freemarker.properties加

  復制代碼 代碼如下:

  或者 ;

  3、在模板中直接加或者,如:

  復制代碼 代碼如下:

  AdminLanguagePaginationMsg?exists>

  

  對于數字的格式化,可采用strng 和number_format 設置

  數字格式化的優先級: string優先級最高,配置文件配置的優先級最低,在頁面setting的優先級在兩者之間。

  七、總結

  對于數字的格式化,可采用strng和number_format設置

  數字格式化的優先級:string優先級最高,配置文件配置的優先級最低,在頁面setting的優先級在兩者之間。

  以上就是freemarker數字格式化的詳細解析了,想必都了解了吧,更多相關內容請繼續關注錯新技術頻道。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久艹在线视频| 国产一区二区欧美日韩| 亚洲国产天堂久久国产91| 亚洲男女自偷自拍图片另类| 久久激情视频久久| 亚洲精品乱码久久久久久按摩观| 丰满岳妇乱一区二区三区| 欧美日韩国产第一页| 国产精品高潮呻吟久久av黑人| 在线精品播放av| 精品视频偷偷看在线观看| 91av视频在线观看| 精品视频在线播放| 国产精品网站视频| 45www国产精品网站| 日韩精品免费综合视频在线播放| 一二美女精品欧洲| 亚洲精品在线91| 国产日韩欧美91| 国产精品中文字幕在线观看| 91久久在线观看| 热久久美女精品天天吊色| 2019中文字幕免费视频| 国产精品视频精品视频| 日韩中文字幕欧美| 久久久999成人| 亚洲高清一区二| 亚洲国产成人精品一区二区| 伊人久久大香线蕉av一区二区| 国内精品久久久久久久久| 中文字幕亚洲综合久久| 亚洲加勒比久久88色综合| 久久夜色精品国产| 国产精品自拍偷拍视频| 日韩av在线免费观看一区| 97国产精品免费视频| 亚洲成人免费在线视频| 日韩欧美亚洲范冰冰与中字| 色综合久久88色综合天天看泰| 亚洲一区二区三区成人在线视频精品| 国产成人一区二区| 欧美日韩综合视频| 国产一区二区精品丝袜| 在线观看国产欧美| 国产香蕉一区二区三区在线视频| 欧美日韩人人澡狠狠躁视频| 亚洲aⅴ日韩av电影在线观看| 亚洲黄色www| 欧美老肥婆性猛交视频| 久久伊人91精品综合网站| 欧美激情精品久久久| 91精品国产自产在线老师啪| 日韩高清电影免费观看完整版| 搡老女人一区二区三区视频tv| 日韩高清电影免费观看完整版| 中文字幕日韩精品有码视频| 国产精品欧美一区二区三区奶水| 国产91ⅴ在线精品免费观看| 韩国福利视频一区| 91色视频在线导航| 91老司机精品视频| 欧美黄色成人网| 欧美日韩免费一区| 成人国产亚洲精品a区天堂华泰| 亚洲性av在线| 91网站免费看| 欧美精品久久一区二区| 日韩欧美成人免费视频| 精品久久久国产精品999| 欧美一级高清免费播放| 欧美国产日韩精品| 欧美极品美女视频网站在线观看免费| 国产精品久久久久久av| 亚洲精品成人久久久| xxav国产精品美女主播| 奇米四色中文综合久久| 欧美怡红院视频一区二区三区| 成人xxxxx| 91中文精品字幕在线视频| 一区二区福利视频| 色小说视频一区| 久久精品国产一区二区三区| 欧美理论片在线观看| 亚洲aa在线观看| 亚洲国内精品视频| 97超级碰碰碰| 国产精品手机播放| 粗暴蹂躏中文一区二区三区| 欧美在线影院在线视频| 国产欧美一区二区三区久久| 欧美日韩免费网站| 亚洲美腿欧美激情另类| 8x拔播拔播x8国产精品| 久久久久久久久久婷婷| 一区二区亚洲精品国产| 亚洲综合中文字幕在线| 国产精品久久久久久久久久久久久| 国产成人精品电影久久久| 色爱av美腿丝袜综合粉嫩av| 亚洲四色影视在线观看| 国产精品久久久久久久久久久久久| 国产视频自拍一区| 日韩一区二区精品视频| 这里只有精品在线播放| 日韩在线视频二区| 日韩电影中文字幕一区| 人人澡人人澡人人看欧美| 欧美极品少妇xxxxⅹ喷水| 国产精品高清网站| 国产69精品久久久久9999| 国产精品视频地址| 久久国产精品影视| 国产精品视频精品视频| 欧美怡春院一区二区三区| 国产精品三级美女白浆呻吟| 亚洲人成网站777色婷婷| 国产成人精品在线播放| 国产精品精品国产| 欧美日韩激情视频8区| 日韩在线观看电影| 中文字幕在线成人| 成人免费在线视频网址| 国产偷国产偷亚洲清高网站| 91探花福利精品国产自产在线| 日韩高清免费在线| 在线电影欧美日韩一区二区私密| 久久久国产精彩视频美女艺术照福利| 日韩欧美中文字幕在线播放| 精品性高朝久久久久久久| 亚洲欧洲视频在线| 亚洲人成网在线播放| 亚洲精品网址在线观看| 久久这里只有精品视频首页| 日韩欧美在线观看视频| 亚洲色图国产精品| 亚洲美女www午夜| 久久久精品视频在线观看| 日韩欧美在线视频| 97久久精品人人澡人人爽缅北| 日韩精品在线看| 欧美二区在线播放| 久久影视电视剧免费网站清宫辞电视| 日韩欧美一区视频| 国产丝袜精品视频| 热99在线视频| 中文在线资源观看视频网站免费不卡| 一本色道久久综合狠狠躁篇的优点| 久久夜色撩人精品| 日韩在线观看视频免费| 2018中文字幕一区二区三区| 欧美在线亚洲一区| 国产精品劲爆视频| 福利一区福利二区微拍刺激| www国产亚洲精品久久网站| 国产成人精品免高潮费视频| 欧美日韩美女在线| 久久久成人av| 88国产精品欧美一区二区三区| 伦伦影院午夜日韩欧美限制| 欧美放荡办公室videos4k| 少妇高潮久久久久久潘金莲| 国产精品精品视频一区二区三区| 亚洲男女自偷自拍图片另类| 欧美乱大交做爰xxxⅹ性3|