【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)流程不同:发送消息是第三方服务器主动通知微信服务器向用户发消息.而被动回复消息是 用户发送消息 ...
随机推荐
- ASP.NET 程序中删除文件夹导致session失效解决问题
在Global中 Application_Start 添加 如: void Application_Start(object sender, EventArgs e) { //在 ...
- ASP.NET MVC 4 RC的JS/CSS打包压缩功能 Scripts.Render和Styles.Render
打包(Bundling)及压缩(Minification)指的是将多个js文件或css文件打包成单一文件并压缩的做法,如此可减少浏览器需下载多个文件案才能完成网页显示的延迟感,同时通过移除JS/CSS ...
- hdu 5876 ACM/ICPC Dalian Online 1009 Sparse Graph
题目链接 分析:这叫补图上的BFS,萌新第一次遇到= =.方法很简单,看了别人的代码后,自己也学会了.方法就是开两个集合,一个A表示在下一次bfs中能够到达的点,另一个B就是下一次bfs中到不了的点. ...
- MVC——入门+简单的小实例
MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controler)的缩写,一种软件设计典范,用于组织代码用一种业务逻辑和数据显示分离的方法. ...
- CSS 高级技巧汇总
在我们平时写代码的时候没有没有掌握一些CSS技巧呢? 今天给大家分享一个<CSS 高级技巧汇总让你的代码简洁高效>.大家务必掌握这些小技巧,会让你非常高效率的写出网页的. ◆使用 :not ...
- pwnable.kr-collision
题目: 链接后登陆 ssh col@pwnable.kr -p2222 查看文件以及权限 Ls –al 查看代码 cat col.c 根据 if(strlen(argv[1]) != 20){ pri ...
- 服务器端与客户端TCP连接入门(三:多线程)
对于服务器端来说,如果要加入多线程机制,则应该在每个用户连接之后启动一个新的线程 建立一个EchoThread类,此类专门用于处理多线程操作,此时的多线程使用Runnable接口实现 package ...
- Codeforces Round #380 (Div. 2) 解题报告
第一次全程参加的CF比赛(虽然过了D题之后就开始干别的去了),人生第一次codeforces上分--(或许之前的比赛如果都参加全程也不会那么惨吧),终于回到了specialist的行列,感动~.虽然最 ...
- bcopy函数
函数原型:void bcopy(const void *src, void *dest, int n) 头文件:#include <string.h> 函数功能:将src指针指 ...
- SDR 研究
最近终于买了一个RTL2832u 电视棒,可以软件无线电了 使用我的小米3开发板 (安卓6.0),直接在应用商店里搜索 "sdr",到豌豆荚中,就有“RTL驱动程序” 点击下载安装 ...