java 格式化 日期?回答有用再加50分!

java 格式化 日期?回答有用再加50分!,第1张

统一处理是要满足一定条件的,比如年份必须输入四位或者年月日的顺序
不然09/5/1--->09/5/10 这个格式要当成2009年还是2010年,完全没限制的输入没办法完全兼容
给出的是你列举出来的格式,要还会有别的格式就另加处理吧~~~
public static void main(String[] args) {
//2009/05/01,09/5/1,09年5月1日,05/01/2009,2009年05月01日,20090501,2009-5-1
String date="20090501";
if(datematches("^[\\d]{4}/[\\d]{2}/[\\d]{2}$")){//2009/05/01
date=datereplace("/", "-");
}else if(datematches("^[\\d]{2}/[\\d]{1,2}/[\\d]{1,2}$")){//09/5/1
date=20+datereplace("/", "-");
}else if(datematches("^[\\d]{2}年[\\d]{1,2}月[\\d]{1,2}日$")){//09年5月1日
date=20+datereplaceAll("[年||月]", "-");
date=datesubstring(0, datelength()-1);
}else if(datematches("^[\\d]{2}/[\\d]{2}/[\\d]{4}$")){//05/01/2009
date=datesubstring(6, 10)+"-"+datesubstring(3, 5)+"-"+datesubstring(0, 2);
}else if(datematches("^[\\d]{4}年[\\d]{2}月[\\d]{2}日$")){//2009年05月01日
date=datereplaceAll("[年||月]", "-");
date=datesubstring(0, datelength()-1);
}else if(datematches("^[\\d]{8}$")){//20090501
date=datesubstring(0, 4)+"-"+datesubstring(4, 6)+"-"+datesubstring(6, 8);
}else if(datematches("^[\\d]{4}-[\\d]{1,2}-[\\d]{1,2}$")){//2009-5-1
}
javasqlDate d=javasqlDatevalueOf(date);//不直接输出是因为要考虑2009-5-1和2009-5-11日期和月份两位数的处理
Systemoutprintln(dtoString());
}

你数据库的日期是Date类型的,就算格式化后存入数据库再取出来也是带有时分秒的阿,
如果想在显示的时候格式化可以用SimpleDateFormat类
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String s = sdfformat(date);

把data类型改成String或者,在这bookDto的getReleaseDate方法里返回一个字符串
javatextSimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
Date date = new Date();
String strDate = sdfformat(date); //这样就得到格式化后的字符串

import javautilDate;
import javatextSimpleDateFormat;
class dayTime
{
public static void main(String args[])
{
Date nowTime=new Date();
Systemoutprintln(nowTime);
SimpleDateFormat time=new SimpleDateFormat("yyyy MM dd HH mm ss");
Systemoutprintln(timeformat(nowTime));
}
}

public class DateFormatDemo {public static void main(String[] args) throws ParseException {// 创建日期对象Date d = new Date();// 给定模式SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");// public final String

将字符串类型的时间转换成date类型可以使用SimpleDateFormat来转换,具体方法如下:
1、定义一个字符串类型的时间;
2、创建一个SimpleDateFormat对象并设置格式;
3、最后使用SimpleDateFormat的parse方法将String类型的时间转换成Date类型的时间。
具体代码如下:
String string = "2014-3-17";
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
Date date = null;
try {
date = dateFormatparse(string);
Systemoutprintln(datetoLocaleString()split(" ")[0]);//切割掉不要的时分秒数据
} catch (ParseException e) {
eprintStackTrace();
}
介绍一下SimpleDateFormat:SimpleDateFormat 是 Java 中一个非常常用的类,该类用来对日期字符串进行解析和格式化输出。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/10496691.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-09
下一篇 2023-05-09

发表评论

登录后才能评论

评论列表(0条)

保存