`
Virgo_S
  • 浏览: 1138326 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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

    博客分类:
  • JAVA
阅读更多
通过长时间的对时间不同格式的转换,自己觉得其实就是对毫秒数的操作
    System.currentTimeMillis()

得到从1970年1月1日到现在的毫秒数,就可以转换成各种的形式。

有这样一个字符串:“20070911121547”,
转换成时间格式:2007-09-11 12:15:47

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());
		}
	}

}


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

自己做了一个例子:

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);
	}
	
	
}
分享到:
评论
1 楼 蜉蝣人生 2011-11-23  
以上第一个应该是用public abstract class DateFormatextends Format 类。

相关推荐

    Java基础之日期操作总结

    一、日期格式化, 以及字符串转换成日期  主要用到 SimpleDateFormat 类实现日期的格式化,以及日期字符串的解析。  示例:  SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");  // ...

    java 算法

    多线程的世界时钟,显示巴黎,罗马,上海时间, AWT界面,Java日期格式化及其使用例子,几个常用方法,判断字符是否属于中文,异常处理类,去掉字符串中重复的子字符串,将指定byte数组以16进制的形式打印到控制台,...

    java 面试题 总结

    JAVA平台提供了两个类:String和StringBuffer,它们可以储存和操作字符串,即包含多个字符的字符数据。这个String类提供了数值不可改变的字符串。而这个StringBuffer类提供的字符串进行修改。当你知道字符数据要改变...

    计算机程序设计(Java)-教案--单元二--Java语言开发基础.docx.docx

    数据类型、运算符、字符串、数组等知识在编程过程中能熟练、准确应用; ・:・能熟练、准确地应用分支、循环、跳转三种流程执行过程; 教学重点 :・标识符命名规那么、数据类型与运算符; : 嵌套ifelse语句的用法...

    JAVA入门1.2.3:一个老鸟的JAVA学习心得 PART1(共3个)

    9.2.6 在字符串中查找子字符串或字符 226 9.2.7 替换字符串中的内容 226 9.2.8 String对象——磐石刻字 227 9.3 String类的最佳拍档——StringBuffer类 227 9.3.1 StringBuffer:专业操纵字符 228 9.3.2 String...

    Java程序设计习题集下载

    习题集内容覆盖面广,包括:Java言的基本常识、基本语法、面向对象的基本概念、数组、字符串、异常处理、文件和数据流、图形用户界面设计、小应用程序、线程、编程规范、网络程序设计、多媒体民图形学程序设计以及...

    Java入门1·2·3:一个老鸟的Java学习心得.PART3(共3个)

    9.2.6 在字符串中查找子字符串或字符 226 9.2.7 替换字符串中的内容 226 9.2.8 String对象——磐石刻字 227 9.3 String类的最佳拍档——StringBuffer类 227 9.3.1 StringBuffer:专业操纵字符 228 9.3.2 String...

    Java之IO流学习总结

    字符串文件路径;b.File对象。 该对象既可以对文件进行读操作,也能进行写操作,在进行对象实例化时可指定操作模式(r,rw) 注意:该对象在实例化时,如果要操作的文件不存在,会自动创建;如果文件存在,写数据未指定...

    JAVA基础课程讲义

    字符串(java.lang.String类)的使用 90 字符串相等的判断 92 思考作业 93 上机作业 94 第四章 异常机制 95 导引问题 95 异常(Exception)的概念 96 异常分类 96 Error 97 Error和Exception的区别 97 Exception 97 ...

    Java面试宝典2010版

    35、如何把一段逗号分割的字符串转换成一个数组? 24 36、数组有没有length()这个方法? String有没有length()这个方法? 24 37、下面这条语句一共创建了多少个对象:String s="a"+"b"+"c"+"d"; 24 38、try {}里有一个...

    关于日期的处理包括java和sql

    关于日期的处理包括java和sql。其中提到各种情况,如字符串和日期之间转换、日期的增减、获取年月日、日期比较大小等等,个人总结的拿出来和大家共享一下

    Java JDK 7学习笔记(国内第一本Java 7,前期版本累计销量5万册)

     《Java JDK 7学习笔记》是作者多年来教学实践的经验总结,汇集了学员在教学过程中遇到的概念、操作、应用或认证考试上的各种问题及解决方案。  《Java JDK 7学习笔记》详细介绍了JVM、JRE、Java SE API、JDK与IDE...

    整理后java开发全套达内学习笔记(含练习)

    System.out.printf() 可插入带 % 的输入类型,前两种只可以插入转义符, 不能插入 % 的数据或字符串 在 printf 里面,输出有5个部分 %[argument_index$][flags][width][.precision]conversion 以“%”开头,[第几个...

    java工具类.zip

    1.利用public static method进行日期格式的转换 2.利用内容的Calendar object进行日期的计算,适合有大量的日期计算,用method 1则效率低的场合 3处理json日期转化问题 4提供高精度的运算支持. 所以函数以double为...

    Visual C++ 2005入门经典--源代码及课后练习答案

    6.7.2 从字符串中删除空格 268 6.7.3 计算表达式的值 268 6.7.4 获得项值 271 6.7.5 分析数 272 6.7.6 整合程序 274 6.7.7 扩展程序 276 6.7.8 提取子字符串 277 6.7.9 运行修改过的程序 280 6.8 ...

    DB2各类函数总汇

    DB2各类函数的分类总汇文档 1. 聚合函数 2. 类型转换函数 3. 数学函数 4. 字符串函数 5. 日期时间函数 6. XML 函数 7. 分区函数 8. 安全函数 9. 其他

    freemarker总结

    upper_case:将字符串转换成大写 trim:去掉字符串前后的空白字符 下面是集合的常用内建函数 size:获取序列中元素的个数 下面是数字值的常用内建函数 int:取得数字的整数部分,结果带符号 例如: ${test?html}...

    JSP实用技巧集合,jsp编程的一些小技巧总结

    32. 把一种格式(如yyyy-mm-dd)的日期变量转换成另外一种格式(如dd-mm-yyyy)的日期变量! 33. 实现在页面上添加一行输入对话框 34. 制作验证码图片? 35. 图片缩小放大功能 36. 点击输入框弹出日期选择? 37. 在...

    java面试题,180多页,绝对良心制作,欢迎点评,涵盖各种知识点,排版优美,阅读舒心

    创建了几个字符串对象 30 【基础】接口是否可继承(extends)接口?抽象类是否可实现(implements)接口?抽象类是否可继承具体类(concrete class) 30 【基础】一个".java"源文件中是否可以包含多个类(不是内部类...

    Python学习 | 一个JAVA程序员两天的Python入门笔记

    文章目录vlog正文入门基础注释算数运算符及优先级程序执行原理变量概念和定义方式变量的命名变量的输入和输出数据类型数值型非数值型列表元组列表与元组的互相转换字典字符串在Python中所有非数字型变量都支持的特点...

Global site tag (gtag.js) - Google Analytics