我在尝试将字符串转换Mon, 01 Feb 2016 13:04:51 -0500
为日期时遇到问题.
运用
SimpleDateFormat formatter = new SimpleDateFormat("EEE, MMM dd, yyyy HH:mm:ss Z", Locale.US);
或者Locale.ENGLISH
在日志中显示一个解析异常:
java.text.ParseException: Unparseable date: "Mon, 01 Feb 2016 13:04:51 -0500" (at offset 5)
我怎样才能将它转换为约会?
我有这个代码
public class HelloWorld{
public static void main(String []args){
try{
java.util.Date mDate;
java.text.SimpleDateFormat readFormat = new java.text.SimpleDateFormat("yyyy-mm-dd");
mDate = readFormat.parse("2017-02-05");
System.out.println("date: " + mDate.toString());
} catch (java.text.ParseException e1) {
e1.printStackTrace();
}
}
Run Code Online (Sandbox Code Playgroud)
}
我预计输出像2017年2月5日00:02:00 UTC
但我得到输出Jan 05 00:02:00 UTC 2017为什么?我的代码有什么问题?
我希望在给定的日期添加一天.如果我通过2018-08-05,则以下方法返回2018-08-06,这是预期的.但如果通过该月的最后一个日期-2018-08-31,则返回2018-08-01而不是2018-09-01的预期结果.
DateFormat format = new SimpleDateFormat("yyyy-mm-dd", Locale.ENGLISH);
Date date = null;
try {
date = format.parse("2018-08-31");
} catch (ParseException e) {
}
Calendar cal = Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.DATE ,1);
return format.format(cal.getTime());
Run Code Online (Sandbox Code Playgroud) SimpleDateFormat format = new SimpleDateFormat("YYYY-MM-DD");
System.out.println("=============new Date() ="+new Date());
String dateStr =format.format(new Date() );
System.out.println("==============dateStr "+dateStr );
Run Code Online (Sandbox Code Playgroud)
并查看以下输出
=============new Date() =Mon Feb 01 11:22:02 EST 2021
==============dateStr = 2021-02-32
Run Code Online (Sandbox Code Playgroud)
这个今天运行良好的代码有什么问题呢?
我正在尝试将ISO 8601日期字符串转换为纪元时间.我该如何处理负面日期?以下代码是否正确?我应该使用其他东西而不是简单的日期格式库吗?负日期适用于BC.
String formatString = "yyyy-MM-dd'T'hh:mm:ssX";
SimpleDateFormat formatter = new SimpleDateFormat(formatString);
Date date = formatter.parse("-2017-01-04T12:30:00+05:00");
System.out.println(date.getTime()/1000);
Answer: -125818806600L
Run Code Online (Sandbox Code Playgroud) 我发送有效日期("1705")并获得不同的解析日期("1701")
有什么帮助解决什么问题?中间的打印显示有效日期.
SimpleDateFormat sdf = new SimpleDateFormat("YYMM");
System.out.println(exYear+exMonth);
Date ccDate = sdf.parse(exYear+exMonth);
Run Code Online (Sandbox Code Playgroud) 我有一个等于 的字符串值"202004"
。我怎样才能将它转换为"April, 2020"
Java?
我有一个像日期月份(2012年8月31日)的字符串.我想将其转换为日期格式.
String string = "31082012";
Date date = new SimpleDateFormat("DDMMYYYY").parse(string);
System.out.println(date);
Run Code Online (Sandbox Code Playgroud) java ×7
date ×5
android ×2
api ×1
date-format ×1
iso8601 ×1
spring ×1
spring-boot ×1
spring-mvc ×1
string ×1