怎么将string类型的日期转换为date
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么将string类型的日期转换为date相关的知识,希望对你有一定的参考价值。
1、首先介绍一下将String类型转为Date类型的方法。需要导入java.text.SimpleDateFormat类。下面举一个例子,比如有一个字符串 “2018-08-24“,想要转为Date类型,代码如图所示。
2、可以看出,只需要给SimpleDateFormat指定格式,如yyyy-MM-dd,然后使用SimpleDateFormat的parse方法就可以实现将String类型转为Date类型了。
3、下面我们验证一下。是否转化成功,打印一下转化后的时间类型的毫秒数,如果可以打印出结果,说明转化成功,代码如图所示。
4、通过上面的代码可以看出,String类型已经成功转换为Date类型了,注意一点,使用SimpleDateFormat需要捕获ParseException异常。如图所示。
参考技术A 下面的代码说明如何将String类型的日期转换成java.util.Date类型的对象。为了实现转换,我们使用java.text.SimpleTextFormat类,它继承自java.txt.TextFormat抽象类。import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.text.ParseException;
import java.util.Date;
public class StringToDate
public static void main(String[] args)
DateFormat df = new SimpleDateFormat("dd/MM/yyyy");
try
Date today = df.parse("20/12/2009");
System.out.println("Today = " + df.format(today));
catch (ParseException e)
e.printStackTrace();
下面是代码的结果:
Today = 20/12/2009
例子的开始部分创建了一个“dd/MM/yyyy”格式的SimpleDateFormat对象,它意味着要转换的日期字符串的格式是日期、月、年。
最后,通过使用parse(String srouce)函数得到一个Date类的实例。由于当给定的字符串不符合给定格式时,parse对象跑出ParseException异常,我们需要捕获它。
下面的列表是从javadoc文档中摘取的用来格式化Date对象的一些预定义的模式。本回答被提问者采纳
在js页面,怎么把string 类型转化为date 类型存入数据库
代码如下:
//date类型转成string<!--
/**
* 对Date的扩展,将 Date 转化为指定格式的String
* 月(M)、日(d)、12小时(h)、24小时(H)、分(m)、秒(s)、周(E)、季度(q) 可以用 1-2 个占位符
* 年(y)可以用 1-4 个占位符,毫秒(S)只能用 1 个占位符(是 1-3 位的数字)
* eg:
* (new Date()).pattern("yyyy-MM-dd hh:mm:ss.S") ==> 2006-07-02 08:09:04.423
* (new Date()).pattern("yyyy-MM-dd E HH:mm:ss") ==> 2009-03-10 二 20:09:04
* (new Date()).pattern("yyyy-MM-dd EE hh:mm:ss") ==> 2009-03-10 周二 08:09:04
* (new Date()).pattern("yyyy-MM-dd EEE hh:mm:ss") ==> 2009-03-10 星期二 08:09:04
* (new Date()).pattern("yyyy-M-d h:m:s.S") ==> 2006-7-2 8:9:4.18
*/
//var date = new Date();
//window.alert(date.pattern("yyyy-MM-dd hh:mm:ss"));
// -->
Date.prototype.pattern=function(fmt)
var o =
"M+" : this.getMonth()+1, //月份
"d+" : this.getDate(), //日
"h+" : this.getHours()%12 == 0 ? 12 : this.getHours()%12, //小时
"H+" : this.getHours(), //小时
"m+" : this.getMinutes(), //分
"s+" : this.getSeconds(), //秒
"q+" : Math.floor((this.getMonth()+3)/3), //季度
"S" : this.getMilliseconds() //毫秒
;
var week =
"0" : "\\u65e5",
"1" : "\\u4e00",
"2" : "\\u4e8c",
"3" : "\\u4e09",
"4" : "\\u56db",
"5" : "\\u4e94",
"6" : "\\u516d"
;
if(/(y+)/.test(fmt))
fmt=fmt.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
if(/(E+)/.test(fmt))
fmt=fmt.replace(RegExp.$1, ((RegExp.$1.length>1) ? (RegExp.$1.length>2 ? "\\u661f\\u671f" : "\\u5468") : "")+week[this.getDay()+""]);
for(var k in o)
if(new RegExp("("+ k +")").test(fmt))
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length==1) ? (o[k]) : (("00"+ o[k]).substr((""+ o[k]).length)));
return fmt;
参考技术A js是不可以和后台关联的,jsp里可以用DateFormat类的实体类实现将String类型转换成Date存到数据库的 参考技术B js没有数据类型,不用转,它只有一种命名方式:就是var name=未知;
你要是‘未知’是1,它就是数字类型
你要是“未知”是“字符串”,它就是String
像date这种类型,我理解的,在js里就是字符串,最多是用工具改了显示的格式,本质不变
你的问题解决只能在java里,over 参考技术C 在extjs中有Date.parseDate(String str,String format)方法,如果未使用extjs,你可以把里面的js给抽出来! 参考技术D js?
那你肯定要跟后台交互要,然后通过后台代码转换为date类型操作数据库呀
以上是关于怎么将string类型的日期转换为date的主要内容,如果未能解决你的问题,请参考以下文章
json中的String类型的日期为啥自动转换成date类型