【问题标题】:Formatting a date in a file as per the specified format根据指定格式格式化文件中的日期
【发布时间】:2013-04-30 06:56:30
【问题描述】:

我正在解析一个由三列组成的 csv 文件,如下所示

GHF FGH DATE
AAA BBB 20-Aug-2013     
CCC DDD 16-Sep-2013  

我能够成功解析它,但另外我需要添加 在 java 类中验证 csv 文件中的日期格式应为 20-Aug-2013,如上所示。如果我收到其他格式的日期,那么我必须抛出异常。

请告知如何实现这一目标。

【问题讨论】:

    标签: java date csv


    【解决方案1】:

    您可以从java 使用SimpleDateFormat

    Here 是一个可用的示例:

    SimpleDateFormat format = new SimpleDateFormat("dd-MMM-yyyy");
    String myDate = format.parse(myString).toString();
    

    【讨论】:

      【解决方案2】:

      SimpleDateFormat 中的格式应该是:

      SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy");
      

      然后

      Date testDate = sdf.parse(date);
      

      【讨论】:

        【解决方案3】:

        您可以使用SimpleDateFormat 根据您的格式解析日期字符串。确保你做setLenient(false)。如果日期不符合您指定的格式,它将抛出 java.text.ParseException

         SimpleDateFormat sdf = new SimpleDateFormat("dd-MMM-yyyy");
         sdf.setLenient(false);
                try {
                    Date d = sdf.parse("06-AUG-2012") ;
                } catch (ParseException e) {
                    System.out.println("Date is in invalid Format!");
                }
        

        【讨论】:

          猜你喜欢
          • 2023-03-29
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多