栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JAVA-日期格式处理工具类

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JAVA-日期格式处理工具类

package com.util;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;


public class DateUtil {
	
	
	private static String pattern;
	
    
    public static String format(Date date){
    	
    	//设置字符串格式, 判断是否有外部指定
    	boolean hasPattern = pattern();
    	
    	//按照格式将日期对象转换成字符串
        String str = new SimpleDateFormat(pattern).format(date);
        
        //判断, 当没有指定字符串格式, 并且时分秒是否都为0时, 去除时分秒
        if(!hasPattern && str.indexOf("00:00:00") != -1){
            //如果都为0, 则将时分秒从字符串中去除
            str = str.substring(0, str.indexOf(" ")+1);
        }
        
        pattern = null;
        
        return str;
    }
    
    
    public static String format(Date date, String pattern){
    	//设置字符串格式
    	DateUtil.pattern = pattern;
    	//返回格式化的结果
    	return format(date);
    }

    
    public static Date parse(String time) throws Exception{
    	
        Date date = null;
        
        //设置字符串格式, 判断是否有外部指定
    	boolean hasPattern = pattern();
        
        try {
            //按照字符串参数time有时分秒的格式转换
            date = new SimpleDateFormat(pattern).parse(time);
            pattern = null;
        } catch (ParseException e) {
        	pattern = null;
        	//判断, 是否有外部指定的字符串格式
        	if(!hasPattern) {
        		try {
        			//当无法按照有时分秒的格式转换时, 按照无时分秒的格式转换
        			date = new SimpleDateFormat("yyyy-MM-dd").parse(time);
        		} catch (ParseException e1) {
        			throw new Exception("字符串内容有误, 无法转换成日期对象");
        		}
        	}else {
        		throw new Exception("字符串内容有误, 无法转换成日期对象");
        	}
        }
        return date;
    }
    
    
    public static Date parse(String time, String pattern) throws Exception{
    	//设置字符串格式
    	DateUtil.pattern = pattern;
    	//转换日期对象
    	return parse(time);
    }
    
    
    private static boolean pattern() {
    	
    	//判断, 是否有指定的字符串格式
    	if(pattern != null) return true;
    	
    	//没有指定, 则使用默认格式
    	pattern = "yyyy-MM-dd HH:mm:ss";
    	
    	return false;
    }
}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/845707.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号