T001-UT001-0007

本文介绍了一个Java程序,用于将用户输入的日期时间格式化为UNIX时间戳。该程序使用正则表达式验证输入格式,并通过SimpleDateFormat进行日期解析。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

时间戳练习


编写一个程序从标准输入一个日期,转换成UNIX时间戳并打印在标准输出设备上,如下所示:

1
2
3
input a date time:
2015/03/17 22:13:03
timestamp:1426601583

如果输入的内容不符合要求,则提示“Error Input”,程序退出。如下所示:

1
2
3
input a date time:
2015/3/7 2:3:3
Error Input
Icon

注意:

  1. 最后没有换行。
  2. "input a date time:"后有一个换行
  3. 输入内容后存在一个换行
代码如下:
import java.util.Date;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.text.SimpleDateFormat;
public class D0007{
	public static void main(String[] args)throws Exception{
		Date date=null;
		String Sregex="^[1-2][0-9][0-9][0-9]/([1][0-2]|0?[1-9])/([12][0-9]|3[01]|0?[1-9]) ([01][0-9]|[2][0-3]):[0-5][0-9]:[0-5][0-9]$";
		SimpleDateFormat format=new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
		Scanner input=new Scanner(System.in);	
	    System.out.println("input a date time:");
	    String time=input.nextLine();
	    Pattern a=Pattern.compile(Sregex);   
        Matcher b=a.matcher(time);
        boolean one=b.matches();         
        if(one) {  	    	 
        	date = format.parse(time);
	    	System.out.print("timestamp:"+date.getTime()/1000);  
	    }else{
	    	System.out.print("Error Input");
	    	return;
	    }
	}
}


(全文完)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值