- 浏览: 472480 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
chexiazi:
一样的xml代码 报这个错 <ns1:XMLFault ...
CXF 通过用户名和密码进行验证 -
di1984HIT:
谢谢啊 ~~~
通过JavaCompiler进行编译java文件(转载) -
aa00aa00:
'%${userName}%' 这种是可以的,是可以模糊查询的 ...
mybatis 模糊查询 -
一棵杨柳的地盘:
我把你的代码不了一遍 但是汇报错首先:static { ...
CXF 通过用户名和密码进行验证 -
shangmin1990:
转 IntelliJ IDEA 编辑器生成 Hibernate 实体映射文件
第一个例子使用静态的方法 MessageFormat.format
,它在内部创建一个只使用一次的 MessageFormat
:
int planet = 7; String event = "a disturbance in the Force"; String result = MessageFormat.format( "At {1,time} on {1,date}, there was {2} on planet {0,number,integer}.", planet, new Date(), event);
输出为:
At 12:30 PM on Jul 3, 2053, there was a disturbance in the Force on planet 7.
下面的例子创建了一个可以重复使用的 MessageFormat
实例:
int fileCount = 1273; String diskName = "MyDisk"; Object[] testArgs = {new Long(fileCount), diskName}; MessageFormat form = new MessageFormat( "The disk \"{1}\" contains {0} file(s)."); System.out.println(form.format(testArgs));
不同 fileCount
值的输出:
The disk "MyDisk" contains 0 file(s). The disk "MyDisk" contains 1 file(s). The disk "MyDisk" contains 1,273 file(s).
对于更复杂的模式,可以使用 ChoiceFormat
来生成正确的单数和复数形式:
MessageFormat form = new MessageFormat("The disk \"{1}\" contains {0}."); double[] filelimits = {0,1,2}; String[] filepart = {"no files","one file","{0,number} files"}; ChoiceFormat fileform = new ChoiceFormat(filelimits, filepart); form.setFormatByArgumentIndex(0, fileform); int fileCount = 1273; String diskName = "MyDisk"; Object[] testArgs = {new Long(fileCount), diskName}; System.out.println(form.format(testArgs));
不同的 fileCount
值的输出:
The disk "MyDisk" contains no files. The disk "MyDisk" contains one file. The disk "MyDisk" contains 1,273 files.
=============================================================
- MessageFormat使用以下形式的模式:
- MessageFormatPattern:
- String
- MessageFormatPatternFormatElementString
- FormatElement:
- {ArgumentIndex}
- {ArgumentIndex,FormatType}
- {ArgumentIndex,FormatType,FormatStyle}
- FormatType:oneof
- numberdatetimechoice
- FormatStyle:
- short
- medium
- long
- full
- integer
- currency
- percent
- SubformatPattern
- String:
- StringPartopt
- StringStringPart
- StringPart:
- ''
- 'QuotedString'
- UnquotedString
- SubformatPattern:
- SubformatPatternPartopt
- SubformatPatternSubformatPatternPart
- SubFormatPatternPart:
- 'QuotedPattern'
- UnquotedPattern
MessageFormat 使用以下形式的模式: MessageFormatPattern: String MessageFormatPattern FormatElement String FormatElement: { ArgumentIndex } { ArgumentIndex , FormatType } { ArgumentIndex , FormatType , FormatStyle } FormatType: one of number date time choice FormatStyle: short medium long full integer currency percent SubformatPattern String: StringPartopt String StringPart StringPart: '' ' QuotedString ' UnquotedString SubformatPattern: SubformatPatternPartopt SubformatPattern SubformatPatternPart SubFormatPatternPart: ' QuotedPattern ' UnquotedPattern
在 String 中,"''" 表示单引号。QuotedString 可以包含除单引号之外的任意字符;围绕的单引号被移除。UnquotedString 可以包含除单引号和左花括号之外的任意字符。因此,格式化后消息字符串为 "'{0}'" 的字符串可以写作 "'''{'0}''" 或 "'''{0}'''"。
在 SubformatPattern 中,应用了不同的规则。QuotedPattern 可包含除单引号之外的任意字符,但不移除围绕的单引号,因此它们可以由子格式解释。例如,"{1,number,$'#',##}" 将产生一个带井号的数字格式,结果如:"$#31,45"。 UnquotedPattern 可以包含除单引号之外的任意字符,但其中的花括号必须成对出现。例如,"ab {0} de" 和 "ab '}' de" 是有效的子格式模式,而 "ab {0'}' de" 和 "ab } de" 则是无效的。
发表评论
-
java 位运算总结
2018-10-23 11:14 0<div class="iteye-blog- ... -
java sort 排序中的自然序排序总结
2018-10-23 11:07 5834<div class="iteye-blo ... -
Java内存分析工具
2012-11-24 11:16 2259Java运行时数据区包含:Method area, heap, ... -
转 StringUtils.isBlank()函数(分享一下)
2012-02-15 10:23 2998StringUtils的isBlank与isEmply ... -
jquery 使用ajax 提交整个表单的数据
2012-01-06 14:52 5934在使用Struts开发项目的时候发现很爽的一件事就是可以不使用 ... -
struts2 通配符
2011-12-31 16:25 1304在使用struts2时,如果想定义action的话可以这样做 ... -
Maven Web项目部署到Tomcat下
2011-12-30 17:28 19571通过Maven来搭建项目是 ... -
velocity与servlet的整合
2011-12-28 21:07 1479第一天学习velocity,参考别人的blog写了一个与Se ... -
ibatis 与spring3整合
2011-12-28 13:01 5761spring与ibates整合,使用 ... -
ibatis 入门
2011-12-28 12:48 1277昨天学习了一下ibatis ... -
转 JTA简介
2011-12-26 17:47 1073Java Transaction API(Java事务 ... -
转 IntelliJ IDEA 编辑器生成 Hibernate 实体映射文件
2011-12-23 16:03 23400很多人不知道怎么用 IntelliJ IDEA 编辑器 ... -
转 IntelliJ IDEA 使用基础篇 Java IDE编辑器
2011-12-23 15:02 8532IntelliJ IDE ... -
转在CXF中用JAXB数据绑定支持Map类型
2011-12-05 16:38 5262一些java类型不能自然映射成xml,例如,HashMap ... -
cxf wsdltojava 构造方法报错
2011-12-05 14:23 1333I'm marking this as "n ... -
(转)Struts2学习笔记--Internationalization
2011-11-21 18:13 1366Struts2 的国际化 ======== ... -
单例模式
2011-11-18 20:47 1030单例模式(SINGLETON):单例模式确保某一个类只有一个实 ... -
类加载的顺序
2011-11-17 21:40 1202写道 package com.wang; public cl ... -
socket实现客户端与客户端通信
2011-11-17 19:34 3064最近闲来无聊,看了一下socket通信,实现了一个最简版的客户 ... -
接口设计的 11 种原则
2011-05-02 21:02 27547种设计坏味道 1.僵化性: 很难对系统进行改动,因为每个改动 ...
相关推荐
下面我们将详细探讨`MessageFormat`的使用方法和特性。 1. **模式和参数** `MessageFormat`使用特定的模式语法来定义字符串格式,其中`{}`用于标识参数位置。例如,模式`"{0} {1}"`表示两个参数,分别在输出中占据...
在实际前端项目中,MessageFormat可以配合其他i18n工具和框架一起使用,如React的`react-intl`库,或者Angular的`@ngx-translate`,帮助开发者轻松实现多语言支持。同时,由于其遵循ICU标准,使得数据交换和维护更为...
gettext-to-messageformat 使用将gettext输入(po / pot / mo文件)转换为兼容的JSON。 安装 npm install --save gettext-to-messageformat 或者 yarn add gettext-to-messageformat 如果在本机不支持ES6功能...
通过行业黄金标准MessageFormat使用超强大的语言 通过自动字符串提取和翻译界面实现超级轻松的翻译 通过在力矩,香菜等上自动设置区域设置,超级容易集成 超快速的加载,缓存等。可与BrowserPolicy,appcache等配合...
`MessageFormat.format`方法的灵活性还体现在它可以处理复杂的格式化需求,例如使用`ChoiceFormat`来根据参数值的不同输出不同的消息。通过这种方式,我们可以构建出适应各种场景的国际化和本地化消息,使得代码更...
消息格式包使用 messageformat.js 编译消息树。 输出中没有全局变量。安装 > npm install messageformat-bundle用法 var messageformatBundle = require ( 'messageformat-bundle' ) ;// Work in progress…应用程序...
7. **配合其他库使用**:`intl-messageformat`通常与其他i18n库如`formatjs`结合使用,以实现完整的本地化解决方案。 在`intl-messageformat-master`这个压缩包中,可能包含了`intl-messageformat`库的源代码、示例...
ngx-translate编译器,它使用messageformat.js来使用ICU语法编译翻译以处理复数形式和性别 (StackBlitz) 目录 安装 假设您已经安装了 。 使用npm : npm install ngx-translate-messageformat-compiler ...
MessageFormat是Java中用于格式化字符串的一个非常有用的类,它允许我们使用模板化的模式来插入变量值,并且支持多种格式,如数字、日期、时间等。这个类的主要优点在于其灵活性和可读性,使得代码更加清晰,易于...
messageformat.net, .NET的ICU MessageFormat实现 用于. NET 的- 更好的用户界面字符串。 这是. NET 中ICU消息格式的实现。 有关该格式的官方信息,请转到: http://userguide.icu-project.org/formatparse/messages...
3. 创建翻译文件(如`.json`或`.yaml`),在其中使用MessageFormat语法定义字符串。例如: ```json { "GREETING": "你好, {name}! 你有 {count, plural, one{一个朋友} other{# 个朋友}}." } ``` 这里的`{...
虽然有很多不同的 MessageFormat 方言,但我将坚持使用接受的语法。 ##特征 语法高亮 短绒: 突出显示无效的转义序列 突出显示无效的 MessageFormat 块 查找缺少“其他”形式的 MessageFormat 块 在 ...
在国际化应用中,消息通常需要根据不同的地区显示不同的语言,因此MessageFormat与ResourceBundle结合使用可以非常方便地实现这一点。消息格式字符串中通过占位符来标识动态内容的位置,例如"Welcome, {0}!"中的{0}...
在Java中,实现短信模板的匹配是一项非常重要的任务,而使用MessageFormat可以方便地实现这种匹配。MessageFormat是一个强大的工具,可以格式化字符串,使得我们可以灵活地生成不同的短信模板。 首先,让我们了解...
此monorepo由构成我们的ICU MessageFormat的JS实现的以下程序包组成: core-将MessageFormat字符串转换为JavaScript函数的核心库库的命令行客户端将其他本地化格式转换为MessageFormat 用于工具 loader-用于JSON,...
适用于Webpack的YAML i18n加载程序使用和YAML文件作为预编译函数加载到JavaScript中。 使用默认选项,将加载 YAML文件,但也可以将其配置为其他内容。 例如,对于具有已在ICU MessageFormat中包含内容的YAML,请与...
官方版本,亲测可用
MessageFormat 库必须位于您的源代码树中的路径下,您将使用该路径作为别名,如下面的 RequireJS 配置示例所示。 RequireJS 配置 以下是您的 RequireJS 配置应如下所示: requirejs . config ( { "paths" : { ...
`intl-messageformat-parser-master`这个压缩包文件名暗示了这是项目的主分支代码。通常,`master`分支代表项目的主线开发,包含了最新的稳定版本。解压后,开发者可以查看源码,了解其工作原理,或者直接在自己的...
MessageFormat 编译对象编译 messageformat.js 翻译字符串对象。安装 npm install messageformat-compile-object --save用法 var compile = require('messageformat-compile-...选项locale - 要使用的语言环境。 Messag