tl  tr
  Home | Tutorials | Articles | Videos | Products | Tools | Search
Interviews | Open Source | Tag Cloud | Follow Us | Bookmark | Contact   
 Template Engines > Freemarker > Number Format Settings

Number Format Settings 

FreeMarker is a java based template engine for complex template processing. This requires the library freemarker-2.3.16.jar to be in classpath. The following example shows various number format settings in FreeMarker.

File Name  :  
/FREEMARKER001/config/numbers.ftl 

File Name  :  
com/bethecoder/tutorials/freemarker/tests/NumberSettingsTest.java 
Author  :  Sudhakar KV
Email  :  [email protected]
   
package com.bethecoder.tutorials.freemarker.tests;

import java.io.IOException;
import java.io.OutputStreamWriter;
import java.util.HashMap;
import java.util.Map;

import freemarker.template.Configuration;
import freemarker.template.Template;
import freemarker.template.TemplateException;

public class NumberSettingsTest {

  /**
   @param args
   @throws IOException 
   @throws TemplateException 
   */
  public static void main(String[] argsthrows IOException, TemplateException  {

    //Get template from classpath
    Configuration cfg = new Configuration();
    cfg.setClassForTemplateLoading(NumberSettingsTest.class, "/");
    Template template = cfg.getTemplate("numbers.ftl");
    
    //Prepare data model
    Map<String, Object> dataModel = new HashMap<String, Object>();
    dataModel.put("num"new Long("123456789"));
    
    //Merge template and data
    OutputStreamWriter output = new OutputStreamWriter(System.out);
    template.process(dataModel, output);
  }
}
   

It gives the following output,
Num with default format : 123,456,789

Num with 0.## format : 123456789

Num with ,##0.00 format : 123,456,789.00

$ {num?string.number} : 123,456,789
$ {num?string.currency} : $123,456,789.00
$ {num?string.percent} : 12,345,678,900%



 
  


  
bl  br