我正在尝试解析dd-MMM-yyyy格式的日期。
package com.company;
import javax.swing.text.DateFormatter;
import java.time.format.DateTimeFormatter;
import java.time.*;
import java.util.Locale;
public class Main {
public static void main(String[] args) {
// write your code here
MonthDay m;
Locale.setDefault(Locale.ENGLISH);
DateTimeFormatter dTF = DateTimeFormatter.ofPattern("dd-MMM-yyyy");
String dateString = "12-jan-1900";
try
{
LocalDate ddd = LocalDate.parse(dateString,dTF);
System.out.println(ddd.toString());
}
catch (Exception e)
{
e.printStackTrace();
}
//System.out.println(d.toString());
}
}
它抛出以下异常
java.time.format.DateTimeParseException: Text '12-jan-1900' could not be parsed at index 3
at java.time.format.DateTimeFormatter.parseResolved0(DateTimeFormatter.java:1949)
at java.time.format.DateTimeFormatter.parse(DateTimeFormatter.java:1851)
at java.time.LocalDate.parse(LocalDate.java:400)
at com.company.Main.main(Main.java:20)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:497)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:144)
它可以很好地解析dd-MM-yyyy格式,但无法解析dd-MM-yyyy格式。我厌倦了设置语言环境。美国也是,但在这种情况下也失败了。
原因是解析默认区分大小写,格式化程序无法识别"jan"
。它只会识别"Jan"
。
您可以通过使用DateTimeFormatterBuilder并调用ParseCaseSensitive()来构造不区分大小写的解析器:
将格式化程序其余部分的分析样式更改为不区分大小写。
解析可以区分大小写或不区分大小写-默认情况下区分大小写。此方法允许更改解析的区分大小写设置。
DateTimeFormatter dTF =
new DateTimeFormatterBuilder().parseCaseInsensitive()
.appendPattern("dd-MMM-yyyy")
.toFormatter();
我试图告诉Gson如何解析LocalDateTime和LocalDate,但我遇到了这个错误,在我看来它应该与格式匹配。我在想,要么我对解析日期有些不了解,要么我对Gson有些不了解。 java.time.format.DateTimeParseException:无法在索引0解析文本2017101800000700
这看起来是一件很简单的事情,但我没有做到。 我有一个字符串模式,它是yyyyMMddHH,我试图将其解析为LocalDateTime的一个实例 代码如下: 它引发以下异常: 无法从输入中解析HH字段 我在这里查看了javadoc,但这没有帮助。 为什么我会有这个例外?如何解决这个问题? 编辑: 我无法删除 以下是限制条件: 用户将给出和(可能是和) 模式必须始终有日期(年月日) 中的时间是可选的,
我有几行代码,如下所示 这给了以下例外 如果我将月份从11月改为11月,效果很好。我从数据库表中获取此值。我是否必须按程序进行更改,或者有任何方法来处理它?
问题内容: 我遇到了一个非常奇怪的问题,听起来像是系统错误。我只想使用小时和分钟信息来格式化日期,并在必要时显示AM / PM。 这是我的代码: 如您所见,我正在使用而不使用,并且如Apple文档所述,如果用户选择12h格式,它应该自动添加AM / PM: 时间的表示可能是13:00。但是,在iOS中,如果用户将24小时制切换为关闭,则时间可能是1:00 pm。 我发现它可以在我的设备(我位于欧洲
本文向大家介绍C#留言时间格式化,包括了C#留言时间格式化的使用技巧和注意事项,需要的朋友参考一下 平台:Vs2012 主要实现例如空间发表说说时间的显示,如:某人在10秒前回复了你这种效果,可用在Web浏览器,窗体,等... 计算两个时间差值的函数,返回时间差的绝对值: 以上所述就是本文的全部内容了,希望大家能够喜欢。
问题内容: 我是Java和Android开发的新手,所以这可能是一个愚蠢的问题,但是我已经搜寻了好几天,却找不到解决方案: 我尝试根据用户的语言环境输出a 。 在StackOverflow上搜索使我想到了这一点: 输出: 在我的法语本地电话上。差不多了 我如何也输出 小时,分钟和秒部分 的,使用用户的语言环境?我一直在寻找android文档,但找不到任何东西。 非常感谢。 问题答案: 用 参考:h