当前位置: 首页 > 知识库问答 >
问题:

使用SimpleDateFormat将日期时间值转换为预期值

佘缪文
2023-03-14
    null
String expiry = "2012-01";
try {
    result = convertDateFormat(expiry, "MM-yyyy", expectedFormat);
} catch (ParseException e) {
    try {
        result = convertDateFormat(expiry, "yyyy-MM", expectedFormat);
    } catch (ParseException e1) {
        e1.printStackTrace();
    }
    e.printStackTrace();
}

private String convertDateFormat(String date, String oPattern, String ePattern) throws ParseException {
    SimpleDateFormat normalFormat = new SimpleDateFormat(oPattern);
    Date d = normalFormat.parse(date);
    SimpleDateFormat cardFormat = new SimpleDateFormat(ePattern);
    return cardFormat.format(d);
}

共有1个答案

陆海阳
2023-03-14

SimpleDateFormat#SetLenient()添加到ConvertDateFormat方法:

private String convertDateFormat(String date, String oPattern, String ePattern) throws ParseException {
    SimpleDateFormat normalFormat = new SimpleDateFormat(oPattern);
    normalFormat.setLenient(false); /* <-- Add this line -- */
    Date d = normalFormat.parse(date);
    SimpleDateFormat cardFormat = new SimpleDateFormat(ePattern);
    return cardFormat.format(d);
}

如果日期不正确,它将使convertdateformat失败。

 类似资料:
  • 问题内容: 将日期转换为其他格式的字符串时遇到问题。日期: 我想将此格式转换为另一种格式:。 当我尝试将其转换时,使用以下方法会得到不同的结果: 我得到了错误的结果,该月已替换为分钟: 问题答案: 这是错误的。这应该是。有关将日期从一种格式转换为另一种格式的更多详细信息,请参见此http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDat

  • 我在将日期转换为不同格式的字符串时遇到了问题。日期: 我想将此格式转换为另一种格式:。 当我尝试转换它时,我会得到不同的结果: 我得到了一个错误的结果,月被替换成了分钟:

  • 问题内容: 有谁知道如何将JS dateTime转换为MySQL datetime?还有一种方法可以向JS日期时间添加特定的分钟数,然后将其传递给MySQL日期时间? 问题答案: 尽管JS确实拥有足够的基本工具来执行此操作,但它相当笨拙。

  • 问题内容: 我在mysql中使用NOW()获取当前日期和时间。我想将日期值转换为varchar并将其与另一个字符串连接。我该怎么做? 问题答案: 使用DATE_FORMAT()

  • 问题内容: 是否有一个内置的转换方法为在Python,例如获得在指定日期的午夜?相反的转换很容易:有一个方法。 我真的必须手动打电话吗? 问题答案: 您可以使用;现在,您创建一个初始化为午夜的对象。