freemarker數字格式化可以在兩個地方設置,一個是全局的,即在freemarker.properties文件中設置number_format,還有一個是使用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
整數取實際的位數
當num值爲0時,格式化出的結果是 .00 ,不是很令人滿意,將小數點前面的#改爲0,即可格式化出滿意的結果0.00
${num?string('##0.00')}