[英]How to convert string date to Timestamp in java?
我想在java中将字符串Date转换为Timestamp。 我写了以下编码。我已声明date1的日期是:7-11-11 12:13:14。
SimpleDateFormat datetimeFormatter1 = new SimpleDateFormat(
"yyyy-MM-dd hh:mm:ss");
Date lFromDate1 = datetimeFormatter1.parse(date1);
System.out.println("gpsdate :" + lFromDate1);
Timestamp fromTS1 = new Timestamp(lFromDate1.getTime());
我想将7-11-11 12:13:14这个字符串日期转换为时间戳。 现在我得到的输出是0007-11-11 00:13:14.000000 +05:30:00但我希望(7-11-11 12:13:14)这种格式的时间戳日期。 谁能帮帮我吗。 谢谢。
您需要做的就是将java.text.SimpleDateFormat
构造函数中的字符串更改为:“MM-dd-yyyy HH:mm:ss”。
只需使用适当的字母构建上面的字符串以匹配您的输入日期。
java.sql.Timestamp
.valueOf( // Class-method parses SQL-style formatted date-time strings.
"2007-11-11 12:13:14"
) // Returns a `Timestamp` object.
.toInstant() // Converts from terrible legacy classes to modern *java.time* class.
java.sql.Timestamp.valueOf
解析SQL格式 如果您可以使用年份的完整四位数字,则输入字符串2007-11-11 12:13:14
将采用标准SQL格式,假设此值应为UTC时区。
java.sql.Timestamp
类有一个valueOf
方法来直接解析这些字符串。
String input = "2007-11-11 12:13:14" ;
java.sql.Timestamp ts = java.sql.Timestamp.valueOf( input ) ;
在Java 8及更高版本中,java.time框架可以更轻松地验证结果。 jsTimestamp类有一个讨厌的习惯,即在通过toString
方法生成字符串表示时隐式应用JVM的当前默认时间戳。 相反,java.time类默认使用标准的ISO 8601格式。
System.out.println( "Output: " + ts.toInstant().toString() );
你甚至可以尝试这个。
String date="09/08/1980"; // take a string date
Timestamp ts=null; //declare timestamp
Date d=new Date(date); // Intialize date with the string date
if(d!=null){ // simple null check
ts=new java.sql.Timestamp(d.getTime()); // convert gettime from date and assign it to your timestamp.
}
使用大写HH
来获取一天中的小时格式,而不是上午/下午小时
您可以将String转换为Timestamp:
String inDate = "01-01-1990"
DateFormat df = new SimpleDateFormat("MM-dd-yyyy");
Timestamp ts = new Timestamp(((java.util.Date)df.parse(inDate)).getTime());
使用下面的代码将String Date转换为Epoc Timestamp。 注意: - 您的输入日期格式应与SimpleDateFormat匹配。
String inputDateInString= "8/15/2017 12:00:00 AM";
SimpleDateFormat dateFormat = new SimpleDateFormat("MM/dd/yyy hh:mm:ss");
Date parsedDate = dateFormat.parse("inputDateInString");
Timestamp timestamp = new java.sql.Timestamp(parsedDate.getTime());
System.out.println("Timestamp "+ timestamp.getTime());
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.