小编典典

使用Java从字符串中检索月,日和年的值

java

如何从字符串中提取Day,Month和Year值[如18/08/2012]。我尝试使用SimpleDateFormat,但它返回一个Date对象,并且观察到所有Get方法均已弃用。有什么更好的方法吗?

谢谢


阅读 215

收藏
2020-11-13

共1个答案

小编典典

我个人将使用Joda Time,它使生活变得更加简单。特别是,这意味着您不必担心Calendarvs的时区与a的时区SimpleDateFormat-只需解析为a
LocalDate,这就是数据 真正 向您显示的内容。这也意味着您不必担心月份从0开始:)

Joda Time使许多日期/时间操作变得更加愉快。

import java.util.*;
import org.joda.time.*;
import org.joda.time.format.*;

public class Test {

    public static void main(String[] args) throws Exception {
        DateTimeFormatter formatter = DateTimeFormat.forPattern("dd/MM/yyyy")
            .withLocale(Locale.UK);

        LocalDate date = formatter.parseLocalDate("18/08/2012");

        System.out.println(date.getYear());  // 2012
        System.out.println(date.getMonthOfYear()); // 8
        System.out.println(date.getDayOfMonth());   // 18
    }
}
2020-11-13