Freemarker,是否可以默认设置计算机编号格式?

时间:2013-01-30 16:30:34

标签: java freemarker

关于FreeMarker,是否有可能指示它默认将所有数字视为“计算机”?

我试图申请

cfg.setSetting(Configurable.NUMBER_FORMAT_KEY, "computer");

cfg.setNumberFormat("computer");

配置对象,但结果不是理想的。相信这是文档的方法,有什么不对吗?

4 个答案:

答案 0 :(得分:2)

您指定的数字格式必须是java.text.DecimalFormat支持的内容。您现在可以做的最接近的事情是将语言环境切换为en_US(并且更好地确保它不使用groping;请参阅http://freemarker.org/docs/app_faq.html#faq_number_grouping)。或者,当然,你可以写?c - s,但我认为这是你想要避免的。

答案 1 :(得分:1)

尝试:

cfg.setNumberFormat("#");

对我有用

答案 2 :(得分:0)

基于docs,可以在Freemarker int rc = 1; do { sum_a = 0; for(i=0 ; i<N ;i++){ rc = fscanf(infiles[i], "%d\n", &a); if(rc == 1){ sum_a += a; printf("%d\n", sum_a); } } }while(rc == 1); for(i=0 ; i<N ;i++) fclose(infiles[i]); 对象上设置它。

典型的功能弹簧上下文初始化:

Configuration

请注意,number_format(或更新版本的freemarker的numberFormat)设置为<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer"> <property name="templateLoaderPaths"> <list> <value>classpath:META-INF/templates</value> </list> </property> <property name="freemarkerSettings"> <props> <prop key="number_format">computer</prop> </props> </property> <property name="defaultEncoding" value="UTF-8" /> </bean> <bean id="viewResolver" class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver"> <property name="prefix" value="" /> <property name="suffix" value=".ftl" /> <property name="cache" value="true" /> <property name="contentType" value="text/html;charset=UTF-8" /> <property name="requestContextAttribute" value="request" /> </bean>

对你的问题......我的猜测是你把它设置为错误的配置对象或范围。

答案 3 :(得分:0)

它在最新版本中可用,我可以在我的Spring启动应用程序中完成

freeMarkerConfigurer.getConfiguration().setNumberFormat("computer");