我有以下一段代码,我认为它可以按照文档承诺的方式工作,但它没有!SimpleDateFormat和Java中的语言环境API
public static void main(String[] args) throws ParseException
{
SimpleDateFormat fm = new SimpleDateFormat("yyyy/MMMM/dd", // format str
new Locale("gd", // language = Scottish Gaelic
"UK", // region = UK
"scotland")); // variant = scotland
fm.parse("2013/an Dàmhair/25");
}
执行此操作(当它被放入具有正确的导入/声明的类中)时会给出以下错误。
Exception in thread "main" java.text.ParseException: Unparseable date: "2013/an Dàmhair/25"
at java.text.DateFormat.parse(DateFormat.java:357)
at Foo.main(Foo.java:15)
任何人都可以告诉我,如果这是一个错误(和/或不支持的功能)?
日期字符串在盖尔语中是明显有效的日期字符串,并且变体/语言也是正确设置的。 (否则,我会期望得到非法武装或类似的东西)。
任何建议如何解决它也将不胜感激。
感谢,
的解决方案是否真正的Locale知道你正在使用的月份名称?如果使用日期格式化程序格式化当前日期,会发生什么情况? –
啊,好问题。我会检查。谢谢 –
好吧,它给我一个简单的英文字符串。但那是*错误*。英语和苏格兰盖尔语是非常相似的! –