java - 使用 Java SimpleDateFormat 查找最大日期

标签 java simpledateformat maxdate

我已经很多年没有用Java编程了,但是我现在必须改变我前段时间写的一个程序。在此程序中,我需要读取 QIF 文件并找到具有最大日期 (Dmm-dd-yyyy) 的 qif 记录。 我无法让它在我的程序中工作,所以我编写了一个简单的测试来演示我遇到的问题。我认为还有其他方法可以做到这一点,例如列表和集合。但我仍然想知道为什么使用 SimpleDateFormat 不起作用。请注意,在输出中,此方法生成 7 月的最大值,但似乎忽略了所有 8 月日期。

谢谢,迈克

导入java.text.SimpleDateFormat; 导入 java.util.Date;

class DateParser {

    public static void main(String[] args) {
        SimpleDateFormat sdf = new SimpleDateFormat("mm-dd-yyyy");
        Date nextDate = null;
        Date maxDate = null;
        String nextStrDate = null;
        String maxStrDate = null;

        //Fill date array.
        String date[] = {"07-14-2014","07-22-2014","07-31-2014",
                         "08-01-2014","08-04-2014","08-06-2014"};

        try {
            //Start with early maximum date.
            maxDate = sdf.parse("01-01-1800");
            // Find Max date in array.
            for (int i=0; i<6; ++i) {
                nextStrDate = date[i];
                nextDate = sdf.parse(nextStrDate);
                if(nextDate.after(maxDate)){
                    maxStrDate = nextStrDate;
                    maxDate = nextDate;
                }
                System.out.println( "Next Date = " + nextStrDate);
            }
            System.out.println("\nMax Date = " + maxStrDate);
        } catch (Exception e) { 
        System.out.println("Got error:" + e);
        }
    }
}

OUTPUT

Next Date = 07-14-2014
Next Date = 07-22-2014
Next Date = 07-31-2014
Next Date = 08-01-2014
Next Date = 08-04-2014
Next Date = 08-06-2014

Max Date = 07-31-2014

最佳答案

来自Java Docs ....

m Minute in hour

你想要的是

M Month in year

mm-dd-yyyy更改为MM-dd-yyyy

关于java - 使用 Java SimpleDateFormat 查找最大日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25539187/

相关文章:

java - Android SimpleDateFormat问题

java - 日期格式化后以小写形式显示 AM 和 PM

sql-server - SQL Server 最后日期

java - Gradle 错误 : com. android.build.transform.api.TransformException

java - 高级 Java swing gui 框架

java - SimpleDateFormat 不工作

cordova - 在cordova datepicker插件中设置maxDate和minDate

javascript - 如何使用 moment.js 从日期列表中获取最小或最大日期?

java - 通过 Rserve 将多维数组从 Java 分配给 R

java - Locale 和 ResourceBundle 之间有什么关系