❶ java 中simpleDateFormat 格式化时间的方法
java中SimpleDateFormat的format()方法的使用详解:
public class SimpleDateFormat extends DateFormat
SimpleDateFormat 是一个以国别敏感的方式格式化和分析数据的具体类。 它允许格式化 (date -> text)、语法分析 (text -> date)和标准化。
SimpleDateFormat 允许以为日期-时间格式化选择任何用户指定的方式启动。 但是,希望用 DateFormat 中getTimeInstance、 getDateInstance 或 getDateTimeInstance 创建一个日期-时间格式化程序。 每个类方法返回一个以缺省格式化方式初始化的日期/时间格式化程序。 可以根据需要用 applyPattern 方法修改格式化方式。
SimpleDateFormat函数的继承关系:
java.lang.Object
|
+----java.text.Format
|
+----java.text.DateFormat
|
+----java.text.SimpleDateFormat
举例如下:
import java.text.*;
import java.util.Date;
/**
SimpleDateFormat函数语法:
G 年代标志符
y 年
M 月
d 日
h 时 在上午或下午 (1~12)
H 时 在一天中 (0~23)
m 分
s 秒
S 毫秒
E 星期
D 一年中的第几天
F 一月中第几个星期几
w 一年中第几个星期
W 一月中第几个星期
a 上午 / 下午 标记符
k 时 在一天中 (1~24)
K 时 在上午或下午 (0~11)
z 时区
*/
public class FormatDateTime {
public static void main(String[] args) {
SimpleDateFormat myFmt=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒");
SimpleDateFormat myFmt1=new SimpleDateFormat("yy/MM/dd HH:mm");
SimpleDateFormat myFmt2=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");//等价于now.toLocaleString()
SimpleDateFormat myFmt3=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E ");
SimpleDateFormat myFmt4=new SimpleDateFormat(
"一年中的第 D 天 一年中第w个星期 一月中第W个星期 在一天中k时 z时区");
Date now=new Date();
System.out.println(myFmt.format(now));
System.out.println(myFmt1.format(now));
System.out.println(myFmt2.format(now));
System.out.println(myFmt3.format(now));
System.out.println(myFmt4.format(now));
System.out.println(now.toGMTString());
System.out.println(now.toLocaleString());
System.out.println(now.toString());
}
}
效果:
2004年12月16日 17时24分27秒
04/12/16 17:24
2004-12-16 17:24:27
2004年12月16日 17时24分27秒 星期四
一年中的第 351 天 一年中第51个星期 一月中第3个星期 在一天中17时 CST时区
16 Dec 2004 09:24:27 GMT
2004-12-16 17:24:27
Thu Dec 16 17:24:27 CST 2004
下面是个JavaBean:
public class FormatDateTime {
public static String toLongDateString(Date dt){
SimpleDateFormat myFmt=new SimpleDateFormat("yyyy年MM月dd日 HH时mm分ss秒 E ");
return myFmt.format(dt);
}
public static String toShortDateString(Date dt){
SimpleDateFormat myFmt=new SimpleDateFormat("yy年MM月dd日 HH时mm分");
return myFmt.format(dt);
}
public static String toLongTimeString(Date dt){
SimpleDateFormat myFmt=new SimpleDateFormat("HH mm ss SSSS");
return myFmt.format(dt);
}
public static String toShortTimeString(Date dt){
SimpleDateFormat myFmt=new SimpleDateFormat("yy/MM/dd HH:mm");
return myFmt.format(dt);
}
public static void main(String[] args) {
Date now=new Date();
System.out.println(FormatDateTime.toLongDateString(now));
System.out.println(FormatDateTime.toShortDateString(now));
System.out.println(FormatDateTime.toLongTimeString(now));
System.out.println(FormatDateTime.toShortTimeString(now));
}
}
调用的main 测试结果:
2015年6月4日 12时38分26秒 星期四
04年12月16日 17时38分
17 38 26 0965
04/12/16 17:38
❷ java数字如何格式化
public static String xxx(String aa) {
String flag = "";
if (aa.length() > 4) {
flag = aa.substring(0, 3) + "." + aa.substring(3, 4);
} else {
flag = aa;
}
return flag;
}
//当然可以继续判断大于5为四舍五入
❸ java的格式化输出
1. L或l - 使数字左对齐(缺省是右对齐)
2. C或c - 使数字居中对齐(缺省是右对齐)
3. X或x - 显示回数字为十六答进制(缺省是十进制)
4. B或b - 显示数字为八进制(缺省是十进制)
5. ,(半角逗号)- 千位分隔符
6. S或s - 显示数字为科学记数法
7. Z或z - 用零填空位(缺省是空格)
8. w.d (两个整数用半角句号隔开)- 指定输出域宽及精度
b. "fillChar"是填空位符(缺省为空格)
--你可以用MyOut.fillChar = '*'或'$'来定义你自己的空位符
举例:
println(123.45678, "8.3L") ->; 123.457(左对齐占八位)
println(123.45678, "10.3cs") ->; 1.235E2 (居中占十位)
println(1234567, ",10") ->; 1,234,567(右对齐占十位)
❹ JAVA中有哪几种格式化字符串
_ 下划线表示单个like '110_ ' 可以查询出 110后面跟任意一个字符的数据
❺ java Format什么意思
Format 是一个用于格式化语言环境敏感的信息(如日期、消息和数字)的抽象基类。
Format 定义了编程接口,用于将语言环境敏感的对象格式化为 String(使用
format 方法)和将 String 重新解析为对象(使用
parseObject 方法)。
通常,一个 format 的 parseObject 方法必须能解析任何由其 format 方法格式化的字符串。不过,也可能存在不能解析的异常情况。例如,format 方法可能创建中间无分隔符的两个相邻整数,在这种情况下,parseObject 无法判断哪个数字属于哪个数。子类化
Java 平台为格式化日期、消息和数字分别提供了三个特殊的 Format 的子类:DateFormat、MessageFormat 和
NumberFormat。
具体的子类必须实现三个方法:
这些常规方法允许对对象进行多态解析和格式化,还可以被使用(如被 MessageFormat 使用)。子类通常也为特定的输入类型提供了另外的 format 方法,也为特定的结果类型提供了 parse 方法。当在输入文本的开始没有任何所需格式的文本时,则任何不带 ParsePosition 参数的 parse 方法都应该抛出 ParseException。
大多数子类还将实现以下工厂方法:
❻ JAVA怎么格式化文档
先解析文本,然后再格式化输出
用正则表达式好像也可以,可以试试 答案补充 先找出第一行,以TITANIC开头的为第一行str1,并将最后一个字母#去掉
然后再读入其它行,每读入一行str_i,
然后输出str+str_i就可以了
程序还是自己写吧!
❼ 在java里,什么是格式化字符串
格式化字符串就是按一定格式输出的字符串
举个例子来说,你想输出时间
2006-07-25
21:20:30
这就是一个格式化字符串,它的格式为
yyyy-mm-dd
hh:mm:ss
下面再给你一个操作的例子,比如说你要输出时间
formatdatetime('yyyy-mm-dd
hh:mm:ss',now);
就能够按我上面的格式输出时间了
又比如说你经过计算得到一个结果,你想用一个有格式的字符串输出
例如:计算结果是xxx,那么可以这样写:
format('计算结果是%d',[result]);
我给出的是delphi代码,如果你用c的,用printf语句也可以实现
printf("计算结果是%d",result);