我在字符串对象中有日期。我想转换为Date对象。
Date getDateFmString(String dateString)
{
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date convertedCurrentDate = sdf.parse(dateString);
return convertedCurrentDate ;
}
上面的函数返回后输出。
Fri Apr 22 00:00:00 IST 2016
答案 0 :(得分:2)
我已经完成了很多关于网络的研究,但我从一位专家那里得到了解决方案。
Date getDateFrmString(String dDate)
{
java.sql.Date dDate = new java.sql.Date(new SimpleDateFormat("yyyy-MM-dd").parse(sDate).getTime());
return dDate;
}
这就是我想要的。
答案 1 :(得分:0)
从
更改日期格式SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
到
SimpleDateFormat sdf = new SimpleDateFormat("dd-mm-yyyy");
希望这有效
答案 2 :(得分:0)
您正在使用错误的格式进行解析尝试
String dateString="01-01-2016";
SimpleDateFormat sdfP = new SimpleDateFormat("dd-MM-yyyy");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date convertedCurrentDate = sdfP .parse(dateString);
String date=sdf.format(convertedCurrentDate );
System.out.println(date);
<强>输出:强>
2016-01-01
如果您希望格式为dd-MM-yyyy
,则无需定义单独的SimpleDateFormat
对象。
String dateString="01-01-2016";
SimpleDateFormat sdf = new SimpleDateFormat("dd-MM-yyyy");
Date convertedCurrentDate = sdf.parse(dateString);
String date=sdf.format(convertedCurrentDate );
System.out.println(date);
<强>输出:强>
01-01-2016
要格式化字符串日期,首先必须使用String所具有的相同日期格式解析String to Date对象,然后使用所需格式对其进行格式化,如上面的代码所示。
答案 3 :(得分:0)
参见此示例
public Class DateFormatDemo{
public static void main (String args[]) {
SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy);
String dateInString = "01/01/2015";
try{
Date date = formatter.parse(dateInString);
System.out.println(date);
System.out.println(formatter.format(date));
}catch(ParseException e){
e.printStackTrace();
}
}
}
此link可能会帮助您进行字符串到日期的对象转换
答案 4 :(得分:0)
Date
个对象没有格式。只有String
可以。 Date
对象将以 告诉 格式为的格式输出。这完全取决于调用DateFormat
时.format()
对象的格式。在toString()
对象上调用Date
方法会使用DateFormat
"dow mon dd hh:mm:ss zzz yyyy"
。
答案 5 :(得分:0)
让我们一步一步来做:
根据对 java.util.Date 类的评论,它是:
dow mon dd hh:mm:ss zzz yyyy
similar to
Fri Apr 22 00:00:00 IST 2016
这与第二种方法中输出的结果一致。但是,即使运行该代码又是多么奇怪。
String inputStr = "11-11-2012";
DateFormat dateFormat = new SimpleDateFormat("dd-MM-yyyy");
Date inputDate = dateFormat.parse(input);
未定义变量'input'。
有哪些可能的解决方案:
在打印日期时,根据要求使用SimpleDateFormat将其转换回String。
Date d =new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String dStr = sdf.format(dateString);
System.out.printn(dStr);