【java消息格式化】使用MessageFormat进行消息格式化
主要介绍了:
- 消息格式化的基本使用;
- 格式化:匹配数字;
- 格式化:匹配日期;
- 格式化:匹配时间;
- 格式化:多次匹配;

示例程序
package com.sssppp.Format;import java.text.MessageFormat;import java.util.Arrays;import java.util.Date;import java.util.List;public class MessageFormatExample {public static void main(String[] args) {// 基本匹配String message = "基本匹配:{0}{1}{2}{3}{4}{5}{6}{7}{8}{9}{10}{11}{12}{13}{14}{15}{16}";Object[] array = new Object[] { "A", "B", "C", "D", "E", "F", "G", "H","I", "J", "K", "L", "M", "N", "O", "P", "Q" };String value = MessageFormat.format(message, array);System.out.println(value); // ABCDEFGHIJKLMNOPQString message1 = "基本匹配:{0} is a person";Object[] array1 = new Object[] { "ZhangSan" };String value1 = MessageFormat.format(message1, array1);System.out.println(value1); // oh, ZhangSan is a personSystem.out.println();// 数字匹配System.out.println("数字匹配,匹配:3.1415");List<String> numList = Arrays.asList("integer", "currency", "percent","#.##", "00.##");for (String string : numList) {String message2 = "{0,number," + string + "}";Object[] array2 = new Object[] { new Double(3.1415) };String value2 = MessageFormat.format(message2, array2);System.out.println(value2);}System.out.println();// 日期匹配System.out.println("日期匹配");List<String> dateList = Arrays.asList("yyyyMMdd-HH:mm:ss", "short","medium", "long", "full");for (String string : dateList) {String message3 = "{0,date," + string + "}";String value3 = MessageFormat.format(message3, new Date());System.out.println(value3);}System.out.println();// 时间匹配System.out.println("时间匹配");List<String> timeList = Arrays.asList("yyyyMMdd-HH:mm:ss", "short","medium", "long", "full");for (String string : timeList) {String message4 = "{0,time," + string + "}";String value4 = MessageFormat.format(message4, new Date());System.out.println(value4);}System.out.println();// 多次匹配String message8 = "多次匹配:{0} | {1} | {0} | {1}";Object[] array8 = new Object[] { "A", "B" };String value8 = MessageFormat.format(message8, array8);System.out.println(value8); // A | B | A | B}}
运行结果
基本匹配:ABCDEFGHIJKLMNOPQ基本匹配:ZhangSan is a person数字匹配,匹配:3.14153¥3.14314%3.1403.14日期匹配20161201-17:13:0516-12-12016-12-12016年12月1日2016年12月1日 星期四时间匹配20161201-17:13:05下午5:1317:13:05下午05时13分05秒下午05时13分05秒 CST多次匹配:A | B | A | B
【java消息格式化】使用MessageFormat进行消息格式化的更多相关文章
- 格式化程序尝试对消息反序列化时引发异常: 尝试对参数 http://tempuri.org/ 进行反序列化时出错: GetLzdtArticleResult。InnerException 消息是“反序列化对象 属于类型 lzdt.DTO.Dtolzdt[] 时出现错误。读取 XML 数据时,超出最大
当遇到这个错误的时候郁闷了好长时间报错是字符串长度过大可是修改了MaxStringContentLength”属性的值却不起作用最后才发现还是因为配置文件配置的问题在服务端 格式化程序尝试对消息反序列 ...
- Java开发微信公众号模板消息【同步|异步】
第一步:申请模板消息功能并添加模板 在微信公众平台找到你需要的模板,并添加上即可: 第二步:添加功能模块后开始开发 功能中使用的类及代码: 发送数据主实体类: Template.java packag ...
- 第四篇 :微信公众平台开发实战Java版之完成消息接受与相应以及消息的处理
温馨提示: 这篇文章是依赖前几篇的文章的. 第一篇:微信公众平台开发实战之了解微信公众平台基础知识以及资料准备 第二篇 :微信公众平台开发实战之开启开发者模式,接入微信公众平台开发 第三篇 :微信公众 ...
- Java企业微信开发_05_消息推送之发送消息(主动)
一.本节要点 1.发送消息与被动回复消息 (1)流程不同:发送消息是第三方服务器主动通知微信服务器向用户发消息.而被动回复消息是 用户发送消息之后,微信服务器将消息传递给 第三方服务器,第三方服务器接 ...
- java版Web Socket,实现消息推送
# web socket是什么? WebSocket协议是基于TCP的一种新的网络协议. 它实现了浏览器与服务器全双工(full-duplex)通信,允许服务器主动发送信息给客户端. ## 用途 实时 ...
- java 操作 RabbitMQ 发送、接受消息
例子1 Producer.java import java.io.IOException; import java.util.concurrent.TimeoutException; import c ...
- Java语言快速实现简单MQ消息队列服务
目录 MQ基础回顾 主要角色 自定义协议 流程顺序 项目构建流程 具体使用流程 代码演示 消息处理中心 Broker 消息处理中心服务 BrokerServer 客户端 MqClient 测试MQ 小 ...
- java 之DelayQueue,TaskDelayed,handlerFactory,dataChange消息配置.收发等.java spring事务处理TransactionTemplate
java 之DelayQueue,TaskDelayed,handlerFactory,dataChange消息配置.收发等.java spring事务处理TransactionTemplate等. ...
- Java企业微信开发_04_消息推送之发送消息(主动)
源码请见: Java企业微信开发_00_源码及资源汇总贴 一.本节要点 1.发送消息与被动回复消息 (1)流程不同:发送消息是第三方服务器主动通知微信服务器向用户发消息.而被动回复消息是 用户发送消息 ...
随机推荐
- 用Application和Session统计在线人数[转]
在Global.asax全局变量文件中,修改其中的 Session_Start 和 Session_End 方法:代码如下: protected void Session_Start(object ...
- Less基础知识~~~实现css
首先献上我学习网址 http://www.bootcss.com/lesscss.html 就是通过less.js的调用,更好的实现css样式布局,更简易化. 最近看前端的职位要求需简单理解less之 ...
- 4、时间同步ntp服务的安装于配置(作为客户端的配置)
yum安装ntpd服务 .yum -y install ntp ntpdate (安装时间同步ntp服务) . vi /etc/ntp.conf (修改ntpd服务的配置文件) 3.修改配置文 ...
- mysql linux终端登陆
mysql -uroot -hlocalhost -psorry 设置远程登录 用户名及密码 GRANT ALL PRIVILEGES ON *.* TO root@"%" IDE ...
- C语言之EOF和feof()
EOF用于判断所操作的文件是否已经读到文件结束,是在stdio.h文件中定义的符号常量,值为-1. 即当系统读取到文件结尾,所返回的一个信号值(也就是-1). EOF不是可输出字符,因此不能在屏幕上输 ...
- SQL中case when then用法
sql语句判断方式之一Case.具有两种格式:简单的Case函数.Case搜索函数. 1.简单Case函数 CASE sex WHEN '1' THEN '男' WHEN '2' THEN '女' E ...
- crackme1.exe解密过程
那今天呢 在西普的做题过程中,发现这么一款.exe,我们来破解一下(当然不是简单的强制爆破,不是简单的打补丁) 我们先用PE 看看 它是用什么写的 有没有加壳什么的 很好 是VC6 ...
- 根据地图上的两个点各自的x,y坐标,计算出2点之间的直线距离。显示为公里、米
/** * calc_map_distance() , 根据地图上的两个点各自的x,y坐标,计算出2点之间的直线距离 * @param array $point_1 第1个点的x,y坐标 array( ...
- sqlserver08评估期已过的解决方法
打开sqlserver出现提示:评估期已过.有关如何升级的测试版软件的信息,请访问http://www.microsoft.com/sql/howtobuy 解决方法如下: 第一步:进入开始菜单--- ...
- 不同vlan之间的相互访问
拓扑图: 用到的命令: 给端口的vlan <sw1>用户模式 切换到系统模式 system-view 交换机名称 sysname swj1 创建vlan 3 端口模式选择int g0/0/ ...