欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

时间戳与格式化时间之间的相互转换

程序员文章站 2022-05-02 14:03:33
...

时间戳与格式化时间之间的相互转换

时间戳与格式化时间是开发过程中经常使用的,且它们之间的转化也比较频繁。

话不多说直接上代码:

	//时间戳转换为格式化时间
    public static String Transfer(long time) {
    	
    	SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
    	String t = s.format(time);
		return t;  
    }
    
    
    
    //格式化时间转化为时间戳
    public static Date Transfer2(String time) {
    	
    	return parse(time, "yyyy-MM-dd HH:mm:ss");
    }
    
	public static Date parse(String time, String format) {
		DateFormat formatter = new SimpleDateFormat(format);
		
        try {
			return (Date) formatter.parse(time);
		} catch (ParseException e) {
			return null;
		}
	}
    

	
	//主类调用测试一下
	public static void main(String[] args) {
		//测个6秒钟
		for(int i = 0 ; i < 6 ; i++) {
			try {
				Thread.sleep(1000);
			} catch (InterruptedException e) {
				e.printStackTrace();
			}
			
			long t = System.currentTimeMillis();
			System.out.println("当前时间戳:" + t);
			
			System.out.println("时间戳转格式化:" + Tt0725.Transfer(t) );
			
			long t2 = Tt0725.Transfer2( Tt0725.Transfer(t) ).getTime();
			System.out.println("格式化转时间戳:" + t2);
			
			System.out.print("\n");
		}
	}

输出结果:
时间戳与格式化时间之间的相互转换
如图所示,之间的转化没有问题。不过,细心的同学会发现一个问题,当前时间戳转化后的时间戳最后三位数不一样,还有个特点,每次都是000,其实这是因为时间戳的单位是毫秒,而格式化时间单位是秒,所以将格式化时间转化为时间戳的时候,后三位自然为零!

相关标签: java