Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将字符串月份转换为整数月份[Java]_Java_Converter - Fatal编程技术网

将字符串月份转换为整数月份[Java]

将字符串月份转换为整数月份[Java],java,converter,Java,Converter,我试图在Java中将字符串month转换为int month。我不想让我的程序有太多的逻辑,所以我正在尝试在不必创建开关盒或枚举的情况下实现它。如果不可能,我将不得不处理它,并创建逻辑 我的字符串示例如下: String date = "2017-Oct-27"; 我希望它是这样的: String date = "2017-10-27"; 有人能帮我吗? 谢谢请尝试下面的代码 String input = "2017-Oct-27"; SimpleDateFormat parser = ne

我试图在Java中将字符串month转换为int month。我不想让我的程序有太多的逻辑,所以我正在尝试在不必创建开关盒或枚举的情况下实现它。如果不可能,我将不得不处理它,并创建逻辑

我的字符串示例如下:

String date = "2017-Oct-27";
我希望它是这样的:

String date = "2017-10-27";
有人能帮我吗? 谢谢

请尝试下面的代码

String input = "2017-Oct-27";
SimpleDateFormat parser = new SimpleDateFormat("yyyy-MMM-dd");
String formattedDate= "";
Date date;
try {
    date = parser.parse(input);
    SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd", Locale.US);
    formattedDate = formatter.format(date);
} catch (ParseException e1) {
    e1.printStackTrace();
}

您可以使用SimpleDataFormat@Mário Correia您想使用第三方jar吗??还有,你在用java 8吗?不,我在用java9@M使用Java8,您可以这样做:DateTimeFormatter parser=DateTimeFormatter.of模式(“MMM”).withLocale(Locale.ENGLISH);TemporalAccessor accessor=parser.parse(月);否,它在线程“main”java.text.ParseException中引发了异常:异常:不可解析日期:“2017-10-27”如果传递的格式正确,请将日志发送给我。我已经在本地测试过了,它对Oct的翻译很有效,语言环境很重要<代码>新的SimpleDataFormat(“yyyy-MMM-dd”,Locale.US)(对于(美国)英语)嗯,可能是因为他正面临着这个问题,这就是Joop的问题。我在葡萄牙,所以它可能不承认sintax是“out”的意思。谢谢你们的帮助!!!