您的位置:首页 > 编程语言 > Java开发

java中字符串转换成时间格式总结

2008-12-29 21:19 906 查看
有这样一个字符串:"20070911121547",

转换成时间格式:2007-09-11 12:15:47

Java代码



public class bb {

public static void main(String[] args) {

// TODO Auto-generated method stub

SimpleDateFormat df = new SimpleDateFormat("yyyyMMddhhmmss");

String dateString = "20071128175545";

try {

Date date = df.parse(dateString);

System.out.println(df.format(date));

} catch (Exception ex) {

System.out.println(ex.getMessage());

}

}

}

public class bb {
public static void main(String[] args) {
// TODO Auto-generated method stub
SimpleDateFormat df = new SimpleDateFormat("yyyyMMddhhmmss");
String dateString = "20071128175545";
try {
Date date = df.parse(dateString);
System.out.println(df.format(date));
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}

}


时间无非就是字符串类型转向时间类型,或则时间类型转向字符串类型,还有就是前一个时间,后一个时间的处理等等

自己做了一个例子:

Java代码



package com.observe.monitoralarm.util;

import java.text.ParseException;

import java.text.SimpleDateFormat;

import java.util.Calendar;

import java.util.Date;

/**

* 时间帮助类

* @version $Id: DateUtil.java,v 1.1 2008/05/28 04:29:52 linan Exp $

* @author LiNan

*/

public class DateUtil {

private Calendar calendar=Calendar.getInstance();

/**

* 得到当前的时间,时间格式yyyy-MM-dd

* @return

*/

public String getCurrentDate(){

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");

return sdf.format(new Date());

}

/**

* 得到当前的时间,自定义时间格式

* y 年 M 月 d 日 H 时 m 分 s 秒

* @param dateFormat 输出显示的时间格式

* @return

*/

public String getCurrentDate(String dateFormat){

SimpleDateFormat sdf=new SimpleDateFormat(dateFormat);

return sdf.format(new Date());

}

/**

* 日期格式化,默认日期格式yyyy-MM-dd

* @param date

* @return

*/

public String getFormatDate(Date date){

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");

return sdf.format(date);

}

/**

* 日期格式化,自定义输出日期格式

* @param date

* @return

*/

public String getFormatDate(Date date,String dateFormat){

SimpleDateFormat sdf=new SimpleDateFormat(dateFormat);

return sdf.format(date);

}

/**

* 返回当前日期的前一个时间日期,amount为正数 当前时间后的时间 为负数 当前时间前的时间

* 默认日期格式yyyy-MM-dd

* @param field 日历字段

* y 年 M 月 d 日 H 时 m 分 s 秒

* @param amount 数量

* @return 一个日期

*/

public String getPreDate(String field,int amount){

calendar.setTime(new Date());

if(field!=null&&!field.equals("")){

if(field.equals("y")){

calendar.add(calendar.YEAR, amount);

}else if(field.equals("M")){

calendar.add(calendar.MONTH, amount);

}else if(field.equals("d")){

calendar.add(calendar.DAY_OF_MONTH, amount);

}else if(field.equals("H")){

calendar.add(calendar.HOUR, amount);

}

}else{

return null;

}

return getFormatDate(calendar.getTime());

}

/**

* 某一个日期的前一个日期

* @param d,某一个日期

* @param field 日历字段

* y 年 M 月 d 日 H 时 m 分 s 秒

* @param amount 数量

* @return 一个日期

*/

public String getPreDate(Date d,String field,int amount){

calendar.setTime(d);

if(field!=null&&!field.equals("")){

if(field.equals("y")){

calendar.add(calendar.YEAR, amount);

}else if(field.equals("M")){

calendar.add(calendar.MONTH, amount);

}else if(field.equals("d")){

calendar.add(calendar.DAY_OF_MONTH, amount);

}else if(field.equals("H")){

calendar.add(calendar.HOUR, amount);

}

}else{

return null;

}

return getFormatDate(calendar.getTime());

}

/**

* 某一个时间的前一个时间

* @param date

* @return

* @throws ParseException

*/

public String getPreDate(String date) throws ParseException{

Date d=new SimpleDateFormat().parse(date);

String preD=getPreDate(d,"d",1);

Date preDate=new SimpleDateFormat().parse(preD);

SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");

return sdf.format(preDate);

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: