一.常规类型、字符类型和数值类型的格式说明符的语法如下:%[argument_index$][flags][width][.precision]conversion

可选的 argument_index 是一个十进制整数,用于表明参数在参数列表中的位置。第一个参数由 "1___FCKpd___0quot; 引用,第二个参数由 "2___FCKpd___0quot; 引用,依此类推。

可选的 flags 是修改输出格式的字符集。有效标志的集合取决于转换类型。

可选 width 是一个非负十进制整数,表明要向输出中写入的最少字符数。

可选 precision 是一个非负十进制整数,通常用来限制字符数。特定行为取决于转换类型。

所需的 conversion 是一个表明应该如何格式化参数的字符。给定参数的有效转换集合取决于参数的数据类型。

1.格式化一个整数,位数不够向前补0(\d整数只能长度为10位)

String.format("%010d",123)则会转换成0000000123

2.格式化一个浮点数,整数位不够向前补0,小数位不够向后补0

String.format("%010.3f", new BigDecimal(123.0)).replace(".",""));(注意如果整个长度为9位.则长度要填写10(因为有.号)

3.格式化一个字符串.位数不够向后补空白

String.format("%10s","abc")(注意该方法不能格式化中文)

格式化含中文的用以下方法:

String content="java格式化";

String blank="                                ";//一定长度空格

(content+blank).substring(0, 20- content.getBytes().length);

二.格式化日期(后缀字符是为 't' 和 'T' 转换定义)

String.format("%tY", new Date())    //2011

String.format("%tm", new Date())   //03

String.format("%tF", new Date())    //2011-03-04

String.format("%tR", new Date())   //15:49

String.format("%tT", new Date())   //15:49:34

String.format("%tc", new Date())   //星期五 三月 04 15:49:34 CST 2011

String.format("%tD", new Date())  //03/04/11

String.format("%td", new Date())   //04

以下转换字符用来格式化日期:
'B'     特定于语言环境的月份全称,例如 "January" 和 "February"。

'b'     特定于语言环境的月份简称,例如 "Jan" 和 "Feb"。

'h'     与 'b' 相同。

'A'     特定于语言环境的星期几全称,例如 "Sunday" 和 "Monday"

'a'     特定于语言环境的星期几简称,例如 "Sun" 和 "Mon"

'C'     除以 100 的四位数表示的年份,被格式化为必要时带前导零的两位数,即 00 - 99

'Y'     年份,被格式化为必要时带前导零的四位数(至少),例如,0092 等于格里高利历的 92 CE。

'y'     年份的最后两位数,被格式化为必要时带前导零的两位数,即 00 - 99。

'j'     一年中的天数,被格式化为必要时带前导零的三位数,例如,对于格里高利历是 001 - 366。

'm'     月份,被格式化为必要时带前导零的两位数,即 01 - 13。

'd'     一个月中的天数,被格式化为必要时带前导零两位数,即 01 - 31

'e'     一个月中的天数,被格式化为两位数,即 1 - 31。
以下转换字符用于格式化常见的日期/时间组合。
'R'     24 小时制的时间,被格式化为 "%tH:%tM"

'T'     24 小时制的时间,被格式化为 "%tH:%tM:%tS"。

'r'     12 小时制的时间,被格式化为 "%tI:%tM:%tS %Tp"。上午或下午标记 ('%Tp') 的位置可能与语言环境有关。

'D'     日期,被格式化为 "%tm/%td/%ty"。

'F'     ISO 8601 格式的完整日期,被格式化为 "%tY-%tm-%td"。

'c'     日期和时间,被格式化为 "%ta %tb %td %tT %tZ %tY",例如 "Sun Jul 20 16:17:00 EDT 1969"。

最新文章

  1. .Net Core Linux centos7行—vscode开发,linux部署运行
  2. Ubuntu全新安装firefox最新版本
  3. 三星电视删除USB播放记录
  4. 关于activity_main.xml与fragment_main.xml
  5. NDK(2)使用eclipse + ndk开发过程演示,含CPU架构编译
  6. Windows Live Writer配置测试
  7. java中substring和indexof() 和lastindexof()
  8. Create screenshots of a web page using Python and QtWebKit | Roland's Blog
  9. Uva 167 The Sultan's Successors(dfs)
  10. MySQL慢查询日志
  11. Java Socket获取本机的InetAddress实例
  12. cache缓存的BUG
  13. C#中dll调用方法
  14. Linux---基础命令(二)
  15. json字符串和字典的区别补充
  16. HTTPS通信原理
  17. ubuntu将GNU nano换成vim
  18. MOBA项目问题记录
  19. <小常识>
  20. 利用oneproxy实现mysql读写分离搭建笔记

热门文章

  1. luogu 3406 海底高铁 前缀和
  2. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---43
  3. linux定时问题
  4. Linux Redhat7 开机启动python脚本
  5. 模糊测试工具Simple Fuzzer
  6. 设置ListView的item不能点击
  7. setlocale 与 mbstowcs 的问题
  8. Linux基础学习3
  9. C++/C# 托管扩展 更改概要 [转]
  10. 算法之美--1.蒙特卡洛方法计算pi