básico Data de classe Java

Uma classe .DATE
número de classe métodos Data estão desatualizados, obsoletos não significa que não está ainda disponível, mas não é recomendado, o funcionário sugeriu que usar a classe Calendar.
Simples de classe data de uso

public class DateDemo {
    public static void main(String[] args) {
        Date date = new Date();
        System.out.println(date);//Mon Mar 30 18:13:26 CST 2020
        // 返回自 1970 年 1 月 1 日 00:00:00 GMT 以来此 Date 对象表示的毫秒数
        System.out.println(date.getTime());//1585563307686
        //过时方法,但是可以使用
        System.out.println(date.toLocaleString());//2020-3-30 18:14:13
    }
}

Dois .DateFormat classe
data DateFormat / hora formatação subclasses da classe abstrata, que formata e analisa datas ou tempo de forma independente da linguagem. Data / formatação tempo subclasses (como o SimpleDateFormat) permitiu formato (data ou seja -> texto), análise (texto -> data) e padronização. A data é representado como um objeto Date, ou como um número de milissegundos GMT (Greenwich Mean Time) 01 de janeiro de 1970 00:00:00 começando a partir deste momento.
Os métodos mais comuns:
①format (data Data) Data um texto de data / hora formatado.
②getInstance () Obtém uso estilo curto para a data e hora do formatador padrão de data / hora.
③parse () a partir de um dado início ao analisar a cadeia de texto para gerar uma data.

public class DateFormatDemo {
    public static void main(String[] args) throws ParseException {
        Date date = new Date();
        DateFormat df = DateFormat.getInstance();
        String format = df.format(date);
        System.out.println(format);//20-3-30 下午6:22默认的是短风格的日期格式
        Date date1 = df.parse(format);
        System.out.println(date1);//Mon Mar 30 18:29:00 CST 2020
        df = DateFormat.getDateInstance(DateFormat.LONG);
        String format1 = df.format(date);
        System.out.println(format1);//2020年3月30日.选择风格
        df = DateFormat.getDateTimeInstance(DateFormat.LONG,DateFormat.LONG);
        String format2 = df.format(date);
        System.out.println(format2);//2020年3月30日 下午06时26分07秒
    }
}

Três .SimpleDateFormat classe
SimpleDateFormat é uma forma locale-relacionada classe concreta de formatação e as datas de análise. Ela permite a formatação (data -> texto), análise (texto -> data) e normalização.
SimpleDateFormat permite a seleção de qualquer data definida pelo usuário - modo de formato de hora. No entanto, recomenda-se para criar uma data DateFormat pela getTimeInstance, getDateInstance ou getDateTimeInstance - formatador tempo. Cada um destes métodos pode retornar uma classe / hora formatador formato de data modo padrão de inicialização. formato padrão pode ser modificado de acordo com o método necessidade applyPattern.
Aqui Insert Picture Descrição
Os métodos mais comuns:
①applyPattern (padrão String) dada cadeia padrão para esse formato de data.

public class SimpleDateFormatDemo {
    public static void main(String[] args) throws ParseException {
        Date date = new Date();
        String pattern="yyyy-MM-dd";//指定风格
        SimpleDateFormat sdf = new SimpleDateFormat();
        sdf.applyPattern(pattern);//将给定模式字符串应用于此日期格式
        String format = sdf.format(date);
        System.out.println(format);//2020-03-30
        Date date1 = sdf.parse(format);
        System.out.println(date1);//Mon Mar 30 00:00:00 CST 2020
    }
}

.Calendar quatro categorias
classe Calendário é uma classe abstrata que fornece uma conversão específica instantânea entre um grupo, como um campo de calendário ano, mês, DAY_OF_MONTH, Hora de algum outro método, e o calendário para o campo operacional (por exemplo, data obtida na próxima semana ) fornece um número de métodos. Instantaneamente valor de milissegundos disponível para indicar que ele é da época (ou seja GMT 00 01 de janeiro de 1970 são: 00: 00.000, calendário gregoriano) offset.

public class CalendarDemo {
    public static void main(String[] args) {
        Calendar calendar = Calendar.getInstance();
        //返回一个表示此 Calendar 时间值(从历元至现在的毫秒偏移量)的 Date 对象
        Date time = calendar.getTime();
        System.out.println(time);//Mon Mar 30 18:43:52 CST 2020
        //获取HOUR属性的值
        int hour = calendar.get(Calendar.HOUR_OF_DAY);
        System.out.println(hour);//18
    }
}

Cinco operação pequena (demanda: inquérito na semana passada ... informações)
Nota: A necessidade mês +1

public class CalendarDemo {
    public static void main(String[] args) {
        // 需求:查询最近一周。。。的信息,如何表示最近这一周
        Date current = new Date();
        Date endTime = null;
        Calendar c = Calendar.getInstance();
        int month=c.get(Calendar.MONTH)+1;
        c.setTime(current);
        //把日增加一天,时分秒设置为0
        c.set(Calendar.MONTH, month);
        c.set(Calendar.DAY_OF_MONTH, 0);
        c.set(Calendar.HOUR_OF_DAY,0);
        c.set(Calendar.MINUTE,0);
        c.set(Calendar.SECOND,0);
        endTime = c.getTime();
        c.add(Calendar.DAY_OF_MONTH, -7);
        Date beginTime = c.getTime();
        System.out.println("开始时间:"+beginTime.toLocaleString());//开始时间:2020-3-24 0:00:00
        System.out.println("结束时间:"+endTime.toLocaleString());//结束时间:2020-3-31 0:00:00
    }
}

Ferramentas de seis .Date

public class DateUtils {

    private static final Logger logger = LoggerFactory.getLogger(DateUtils.class);

    /***
     * Date类型转换成XMLGregorianCalendar类型
     *
     * @param date
     * @return
     */
    public static XMLGregorianCalendar convertToXMLGregorianCalendar(Date date) {
        GregorianCalendar cal = new GregorianCalendar();
        cal.setTime(date);
        XMLGregorianCalendar gc = null;
        try {
            gc = DatatypeFactory.newInstance().newXMLGregorianCalendar(cal);
        } catch (Exception e) {
            logger.error("Date类型转换成XMLGregorianCalendar类型出错:" + e);
        }
        return gc;
    }

    /***
     * XMLGregorianCalendar类型转换成Date类型
     *
     * @param cal
     * @return
     * @throws Exception
     */
    public static Date convertToDate(XMLGregorianCalendar cal) throws Exception {
        GregorianCalendar ca = cal.toGregorianCalendar();
        return ca.getTime();
    }

    /**
     * String 转 Date
     *
     * @param str    日期字符串
     * @param format 转换格式
     * @return Date
     */
    public static Date stringToDate(String str, String format) {
        DateFormat dateFormat = new SimpleDateFormat(format);
        Date date = null;
        try {
            date = dateFormat.parse(str);
        } catch (ParseException e) {
            logger.error("String类型 转 Date类型出错:" + e);
        }
        return date;
    }

    /**
     * Date 转 String
     * auther: shijing
     * 2015年3月25日上午11:28:14
     *
     * @param date   日期
     * @param format 转换格式
     * @return
     */
    public static String dateToString(Date date, String format) {
        DateFormat dateFormat = new SimpleDateFormat(format);
        String strDate = null;
        try {
            if (date != null) {
                strDate = dateFormat.format(date);
            }
        } catch (Exception e) {
            // TODO Auto-generated catch block
            logger.error("Date类型 转 String类型出错:" + e);
        }
        return strDate;
    }


    /***
     * 测试方法
     *
     * @param args
     */
    public static void main(String[] args) {
        XMLGregorianCalendar d = DateUtils
                .convertToXMLGregorianCalendar(new Date());
//		System.out.println(d.getDay());
        XMLGregorianCalendar cal = null;
        try {
            cal = DatatypeFactory.newInstance().newXMLGregorianCalendar();
            cal.setMonth(06);
            cal.setYear(2010);
            Date date = DateUtils.convertToDate(cal);
            String format = "yyyy-MM-dd HH:mm:ss";
            SimpleDateFormat formatter = new SimpleDateFormat(format);
//			System.out.println(formatter.format(date));

            Date d1 = DateUtils.stringToDate("2014/7/24 9:51:00", "yyyy/MM/dd hh:mm:ss");
            XMLGregorianCalendar d2 = DateUtils.convertToXMLGregorianCalendar(d1);
//			System.out.println(d2.toString());

            String dateStr = DateUtils.dateToString(cal.toGregorianCalendar().getTime(), "yyyy-MM-dd HH:mm:ss");
//			System.out.println("dateStr="+ dateStr);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
Publicado 99 artigos originais · ganhou elogios 2 · Vistas 2622

Acho que você gosta

Origin blog.csdn.net/weixin_41588751/article/details/105130223
Recomendado
Clasificación