java fri星期转_如何在Java中将“Fri Sep 21 15:23:59 CEST 2012”转换为“2012-09-21T15:23:59”?...
四点:
如果可以的话,您更愿意使用Java 8中引入的较新的日期和时间类(并且还向后移植到Java 6和7)而不是旧的SimpleDateFormat。
您应确保提供的语言区域与星期几和日期字符串中的月份一致。
虽然不清楚来自the documentation,但我认为模式字符串中的MM是指两位数的月份数;对于三个月的缩写,您需要MMM。这可能是你得到ParseException的原因(虽然错误的语言环境也可能会给你一个)。
Capital Ys适用于工作日。这个错误很容易被忽视,因为一周和日历年通常只有接近新年的几天。对于日历年,您必须使用小写的ys。
以下是如何处理新的日期和时间类:
String dateString = "Fri Sep 21 15:23:59 CEST 2012";
DateTimeFormatter input = DateTimeFormatter.ofPattern("EEE MMM d HH:mm:ss z uuuu",
Locale.ROOT);
try {
LocalDateTime date = LocalDateTime.parse(dateString, input);
System.out.println(date.toString());
} catch (DateTimeParseException dtpe) {
System.err.println(dtpe.getMessage());
}这打印:
2012-09-21T15:23:59请填写适当的区域设置,而不是Locale.ROOT。 uuuu是签名年份:0对应于1 BC,-1到2 BC等。如果您确定年份是AD(当前时代),则可以使用yyyy。
您会注意到您想要的格式来自LocalDateTime.toString(),不需要任何明确的格式化。但是有另一种选择:
ZonedDateTime date = ZonedDateTime.parse(dateString, input);
System.out.println(date.format(DateTimeFormatter.ISO_LOCAL_DATE_TIME));使用ZonedDateTime而不是LocalDateTime的优点是它保留了日期字符串中的时区信息。如果您以后有需要,请选择此选项。
日历年和基于周的年份之间的差异在this question的答案中有解释。
如果您不能使用或不想使用较新的类,则与SimpleDateFormat一起使用的正确模式字符串位于Reimeus’ answer中。我仍然建议明确地给出语言环境,例如:
SimpleDateFormat input = new SimpleDateFormat("EEE MMM dd HH:mm:ss z yyyy",
Locale.UK);输出格式可能不需要区域设置,因为它不包含文本/单词,只包含数字。
java fri星期转_如何在Java中将“Fri Sep 21 15:23:59 CEST 2012”转换为“2012-09-21T15:23:59”?...相关推荐
- java中转json字符串_如何在Java中转义JSON字符串-Eclipse IDE技巧
java中转json字符串 在Java应用程序中工作或进行JSON解析时,通常很常见的做法是从某些资源(例如RESTful Web服务)中复制粘贴JSON字符串,然后使用Jackson库解析JSON. ...
- java整数的因式分解_如何在Java中找到整数的质数-因式分解
java整数的因式分解 编程课程中的常见家庭作业/任务之一是关于Prime Factorization. 要求您编写一个程序以找到给定整数的素因子 . 一个数字的素数因子是将精确地除以给定数字的所有素 ...
- Java poi 列移动_如何在java xssf中移動列poi
如何將現有列數據和格式化到Apache POI中的下一列並將下一列移到右側.如何在java xssf中移動列poi 我試過了. 讓說我的代碼是這樣... XSSFCell oldCell = work ...
- java中为什么同步_如何在Java中同步工作
如何在Java中同步工作 首先, 这是一个示例 : public class Deadlock { static class Friend { private final String name; p ...
- java 精确到微妙_如何在Java中以微秒精度测量时间?
我在Internet上看到应该使用System.nanoTime(),但这对我不起作用-它为我提供了毫秒级的时间.我只需要函数执行前后的微秒,就可以知道需要多长时间.我正在使用Windows XP. ...
- java 方法当参数_如何在Java中将函数作为参数传递?
如何在Java中将函数作为参数传递? 这个问题在这里已有答案: Java Pass方法作为参数 14个答案 是否可以将方法作为参 ...
- java 千位分隔符_如何在Java中设置千位分隔符?
问题 如何在Java中设置千位分隔符?我有BigDecimal的String表示,我想设置千位分隔符并返回String. #1 热门回答(180 赞) 你可以使用格式功能","; ...
- java 判断是否换行_如何在java中检测换行符
是的,我已经阅读了一些关于换行符的其他帖子,但他们没有帮助我.如何在java中检测换行符 我的Java程序应该读取一个.PHP文件,并将源代码分成逐行格式.问题是我似乎无法区分一个换行符和另一个换行符 ...
- java如何实例化集合_如何在java中实例化一个Queue对象?
Queue是一个接口,这意味着你不能直接构造一个Queue . 最好的select是构造一个已经实现Queue接口的类,如下所示: AbstractQueue , ArrayBlockingQueue ...
最新文章
- C++ 操作64位系统,默认读取Wow6432Node子键的解决方法。
- systemtap调试linux内核源码,内核调试工具SystemTap:适合懒人的printk替代品
- Android listview实现单选变化的效果
- 推荐 四种优秀的数据库设计工具
- origin与matlab拟合的不同,Origin自定义模拟与matlab中cftool工具箱拟合结果比较 - 计算模拟 - 小木虫 - 学术 科研 互动社区...
- 记录一下Mac浏览器劫持searchbaron.com的经历
- Go语言系列——Go语言介绍
- 2023最新车道线综述!近五年文章全面盘点(几何建模/机器学习/深度学习)
- 3dsMax学习笔记08_VRayMtl材质制作陶瓷材质
- 【LINUX】libgd-GD库安装
- 护网HVV(蓝队)小白必知必会
- 极云普惠云电脑服务器维护,详细的极云普惠云电脑使用教程
- Android如何实现画板功能?
- 安利一下,简单云笔记
- Frontline软件CPAS
- linux用kde启动桌面,KDE Plasma 5.15桌面环境启动速度更快,Konsole完全支持Emojis
- Chrome浏览器批量离线下载迅雷快传资源
- 对开发测试工程师的理解
- 真正的人工智能已经存在吗
- 区县网站群建设改版过程