精华内容
下载资源
问答
  • import java.text....public class DayTest {public static void main(String[] args) {try {// 获取当前时间Calendar cal = Calendar.getInstance();// 下面可以设置月份,注:月份设置要减1,所以设置...

    import java.text.SimpleDateFormat;

    import java.util.Calendar;

    public class DayTest {

    public static void main(String[] args) {

    try {

    // 获取当前时间

    Calendar cal = Calendar.getInstance();

    // 下面可以设置月份,注:月份设置要减1,所以设置1月就是1-1,设置2月就是2-1,如此类推

    cal.set(Calendar.MONTH, 1 - 1);

    for (int i = 0; i < 365; i++) {

    // 按你的要求设置时间

    cal.set(cal.get(Calendar.YEAR), cal.get(Calendar.MONTH), cal.get(Calendar.DAY_OF_MONTH) + 1, 00, 00,00);

    // 按格式输出

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

    System.out.println(sdf.format(cal.getTime()));

    }

    } catch (Exception e) {

    e.printStackTrace();

    }

    }

    }

    ===========================================sout

    2019-01-04 00:00:00

    2019-01-05 00:00:00

    2019-01-06 00:00:00

    2019-01-07 00:00:00

    2019-01-08 00:00:00

    2019-01-09 00:00:00

    2019-01-10 00:00:00

    2019-01-11 00:00:00

    2019-01-12 00:00:00

    2019-01-13 00:00:00

    2019-01-14 00:00:00

    2019-01-15 00:00:00

    2019-01-16 00:00:00

    2019-01-17 00:00:00

    2019-01-18 00:00:00

    2019-01-19 00:00:00

    2019-01-20 00:00:00

    2019-01-21 00:00:00

    2019-01-22 00:00:00

    2019-01-23 00:00:00

    2019-01-24 00:00:00

    2019-01-25 00:00:00

    2019-01-26 00:00:00

    2019-01-27 00:00:00

    ...

    展开全文
  • java获取一年的周数和间隔天数 1 import java.text.ParseException; 2 import java.text.SimpleDateFormat; 3 import java.util.*; 4 5 public class Test { 6 7 private static Date ...

    java获取一年的周数和间隔天数

      1 import java.text.ParseException;
      2 import java.text.SimpleDateFormat;
      3 import java.util.*;
      4 
      5 public class Test {
      6 
      7     private static Date deformatDatetime(String strDate, String fmt) {
      8         try {
      9             if (fmt == null) {
     10                 return (new SimpleDateFormat("yyyy-MM-dd HH:mm:ss",
     11                         java.util.Locale.ENGLISH)).parse(strDate);
     12             } else {
     13                 return (new SimpleDateFormat(fmt, java.util.Locale.ENGLISH))
     14                         .parse(strDate);
     15             }
     16         } catch (ParseException e) {
     17             // TODO Auto-generated catch block
     18             e.printStackTrace();
     19             return null;
     20         }
     21     }
     22     private static String datetimeToString(Date dt, String fmt) {
     23         if (fmt == null) {
     24             return (new SimpleDateFormat("yyyy-MM-dd HH:mm:ss",
     25                     java.util.Locale.ENGLISH)).format(dt);
     26         } else {
     27             return (new SimpleDateFormat(fmt, java.util.Locale.ENGLISH))
     28                     .format(dt);
     29         }
     30     }
     31     private static class DateRange{
     32         public Date startDate;
     33         public Date endDate;
     34         public DateRange(){
     35 
     36         }
     37         public DateRange(Date dt1,Date dt2){
     38             startDate=dt1;
     39             endDate=dt2;
     40         }
     41     }
     42     /**
     43      * 根據年份獲得該年所有周次及每周的開始-結束日期
     44      * @param pvnYear
     45      * @return
     46      */
     47     private static LinkedHashMap<Integer,DateRange> getWeeksDetByYear(int pvnYear){
     48         LinkedHashMap<Integer, DateRange> lvRet=new LinkedHashMap<Integer,DateRange>();
     49         Calendar lvCal=Calendar.getInstance();
     50         lvCal.setFirstDayOfWeek(Calendar.MONDAY);
     51 
     52         Date lvDt=deformatDatetime(String.valueOf(pvnYear)+"-01-01 00:00:00", null);
     53         lvCal.setTime(lvDt);
     54         int lvWeek=1;
     55         while (true) {
     56             lvCal.set(Calendar.DAY_OF_WEEK, lvCal.getFirstDayOfWeek()); // Monday
     57             Date lvFirstDt=lvCal.getTime();
     58             if (lvFirstDt.getYear()+1900<pvnYear){
     59                 lvFirstDt=lvDt;
     60             }
     61             if (lvFirstDt.getYear()+1900>pvnYear) break;
     62             lvCal.set(Calendar.DAY_OF_WEEK, lvCal.getFirstDayOfWeek()+6); // Sunday?
     63             Date lvLastDt=lvCal.getTime();
     64             if (lvLastDt.getYear()+1900>pvnYear){
     65                 lvLastDt=deformatDatetime(String.valueOf(pvnYear+1)+"-01-01 00:00:00", null);
     66                 lvCal.setTime(lvLastDt);
     67                 lvCal.add(Calendar.DAY_OF_YEAR, -1);
     68                 lvLastDt=lvCal.getTime();
     69             }
     70             lvRet.put(Integer.valueOf(lvWeek), new DateRange(lvFirstDt, lvLastDt));
     71             lvWeek++;
     72             lvCal.add(Calendar.WEEK_OF_YEAR, 1);
     73         }
     74         return lvRet;
     75     }
     76     public static void main(String[] args) throws  Exception{
     77         SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
     78         LinkedHashMap<Integer,DateRange>  lvRet=getWeeksDetByYear(2011);
     79         for (Map.Entry<Integer, DateRange> item:lvRet.entrySet()){
     80             String startDate = datetimeToString(item.getValue().startDate,"yyyy-MM-dd");
     81             String endDate = datetimeToString(item.getValue().endDate,"yyyy-MM-dd");
     82             Date date1 = format.parse(startDate);
     83             Date date2 = format.parse(endDate);
     84             int diff = differentDays(date1,date2);
     85             System.out.println(String.format("Week: %d, %s - %s", item.getKey(),datetimeToString(item.getValue().startDate,"yyyy-MM-dd"),
     86                     datetimeToString(item.getValue().endDate,"yyyy-MM-dd"))+" ----------"+diff);
     87         }
     88     }
     89 
     90     public static int differentDays(Date date1,Date date2)
     91     {
     92         Calendar cal1 = Calendar.getInstance();
     93         cal1.setTime(date1);
     94 
     95         Calendar cal2 = Calendar.getInstance();
     96         cal2.setTime(date2);
     97         int day1= cal1.get(Calendar.DAY_OF_YEAR);
     98         int day2 = cal2.get(Calendar.DAY_OF_YEAR);
     99 
    100         int year1 = cal1.get(Calendar.YEAR);
    101         int year2 = cal2.get(Calendar.YEAR);
    102         if(year1 != year2)   //同一年
    103         {
    104             int timeDistance = 0 ;
    105             for(int i = year1 ; i < year2 ; i ++)
    106             {
    107                 if(i%4==0 && i%100!=0 || i%400==0)    //闰年
    108                 {
    109                     timeDistance += 366;
    110                 }
    111                 else    //不是闰年
    112                 {
    113                     timeDistance += 365;
    114                 }
    115             }
    116 
    117             return timeDistance + (day2-day1) ;
    118         }
    119         else    //不同年
    120         {
    121             return day2-day1;
    122         }
    123     }
    124 }
    View Code

     

    转载于:https://www.cnblogs.com/xiaofengfree/p/10253835.html

    展开全文
  • 1、Date day=new Date();SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");...通过Date类来获取当前时间2、SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:...

    1、Date day=new Date();

    SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

    System.out.println(df.format(day));

    通过Date类来获取当前时间

    2、SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");   System.out.println(df.format(System.currentTimeMillis()));

    通过System类中的currentTimeMillis方法来获取当前时间

    3、Calendar c = Calendar.getInstance();//可以对每个时间域单独修改

    int year = c.get(Calendar.YEAR);

    int month = c.get(Calendar.MONTH);

    int date = c.get(Calendar.DATE);

    int hour = c.get(Calendar.HOUR_OF_DAY);

    int minute = c.get(Calendar.MINUTE);

    int second = c.get(Calendar.SECOND);

    System.out.println(year + "/" + month + "/" + date + " " +hour + ":" +minute + ":" + second);

    通过Calendar类来获取当前时间

    4、 Date date = new Date();

    String year = String.format("%tY", date);

    String month = String.format("%tB", date);

    String day = String.format("%te", date);

    System.out.println("今天是:"+year+"-"+month+"-"+day);

    通过Date类来获取当前时间

    总结:设置时间格式可通过调用SimpleDateFormat类进行设置和通过String中的format方法来设置。可通过Date类和System中的currentTimeMillis来获取!

    展开全文
  • 满意答案owetj推荐于 2016.08.21采纳率:55%等级:9已帮助:863人计算一年有多少个周的思路:首先,每年至少有52个周,至多有53个周,取决于周一是在哪(也可以定位周日,这个是由需求决定的),以下是详细代码,...

    满意答案

    02ae427d08e371d7e90d5b995e828d6d.png

    owetj

    推荐于 2016.08.21

    02ae427d08e371d7e90d5b995e828d6d.png

    采纳率:55%    等级:9

    已帮助:863人

    计算一年有多少个周的思路:首先,每年至少有52个周,至多有53个周,取决于周一是在哪年(也可以定位周日,这个是由需求决定的),以下是详细代码,其中判断哪一天决定了当周是属于哪一年的逻辑是写在getYearWeekEndDay中。

    /**

    * 返回指定年度的所有周。List中包含的是String[2]对象

    * string[0]本周的开始日期,string[1]是本周的结束日期。

    * 日期的格式为yyyy-MM-dd。

    * 每年的第一个周,必须包含星期一且是完整的七天。

    * 例如:2009年的第一个周开始日期为2009-01-05,结束日期为2009-01-11。

    * 星期一在哪一年,那么包含这个星期的周就是哪一年的周。

    * 例如:2008-12-29是星期一,2009-01-04是星期日,哪么这个周就是2008年度的最后一个周。

    *

    * @param year 格式 yyyy ,必须大于1900年度 小于9999年

    * @return

    */

    public static List getWeeksByYear(final int year){

    if(year<1900 || year >9999){

    throw new NullPointerException("年度必须大于等于1900年小于等于9999年");

    }

    //实现思路,首先计算当年有多少个周,然后找到每个周的开始日期和结束日期

    // Calendar calendar = new GregorianCalendar();

    // // 在具有默认语言环境的默认时区内使用当前时间构造一个默认的 GregorianCalendar。

    // calendar.setFirstDayOfWeek(Calendar.MONDAY); //设置每周的第一天为星期一

    // calendar.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY); //每周从周一开始

    // 上面两句代码配合,才能实现,每年度的第一个周,是包含第一个星期一的那个周。

    // calendar.setMinimalDaysInFirstWeek(7); //设置每周最少为7天

    // calendar.set(Calendar.YEAR, year); // 设置年度为指定的年

    // //首先计算当年有多少个周,每年都至少有52个周,个别年度有53个周

    int weeks = getWeekNumByYear(year);

    // System.out.println(year+"共有"+weeks+"个周");

    List result = new ArrayList(weeks);

    for(int i=1;i<=weeks;i++){

    String[] tempWeek = new String[2];

    tempWeek[0] = getYearWeekFirstDay(year,i);

    tempWeek[1] = getYearWeekEndDay (year,i);

    //或者使用下面的代码,不过发现效率更低

    // tempWeek[0] = getDateAdd(firstWeekDay,(i-1)*7+0);

    // tempWeek[1] = getDateAdd(firstWeekDay,(i-1)*7+6);

    result.add(tempWeek);

    // System.out.println(i+"="+tempWeek[0]+"_"+tempWeek[1]);

    }

    return result;

    }

    /**

    * 计算指定年度共有多少个周。

    * @param year 格式 yyyy ,必须大于1900年度 小于9999年

    * @return

    */

    public static int getWeekNumByYear(final int year){

    if(year<1900 || year >9999){

    throw new NullPointerException("年度必须大于等于1900年小于等于9999年");

    }

    int result = 52;//每年至少有52个周 ,最多有53个周。

    String date = getYearWeekFirstDay(year,53);

    if(date.substring(0, 4).equals(year+"")){ //判断年度是否相符,如果相符说明有53个周。

    result = 53;

    }

    return result;

    }

    /**

    * 计算某年某周的开始日期

    * @param yearNum 格式 yyyy ,必须大于1900年度 小于9999年

    * @param weekNum 1到52或者53

    * @return 日期,格式为yyyy-MM-dd

    */

    public static String getYearWeekFirstDay(int yearNum,int weekNum) {

    if(yearNum<1900 || yearNum >9999){

    throw new NullPointerException("年度必须大于等于1900年小于等于9999年");

    }

    Calendar cal = Calendar.getInstance();

    cal.setFirstDayOfWeek(Calendar.MONDAY); //设置每周的第一天为星期一

    cal.set(Calendar.DAY_OF_WEEK, Calendar.MONDAY);//每周从周一开始

    // 上面两句代码配合,才能实现,每年度的第一个周,是包含第一个星期一的那个周。

    cal.setMinimalDaysInFirstWeek(7); //设置每周最少为7天

    cal.set(Calendar.YEAR, yearNum);

    cal.set(Calendar.WEEK_OF_YEAR, weekNum);

    //分别取得当前日期的年、月、日

    return getFormatDate(cal.getTime());

    }

    /**

    * 计算某年某周的结束日期

    * @param yearNum 格式 yyyy ,必须大于1900年度 小于9999年

    * @param weekNum 1到52或者53

    * @return 日期,格式为yyyy-MM-dd

    */

    public static String getYearWeekEndDay(int yearNum,int weekNum) {

    if(yearNum<1900 || yearNum >9999){

    throw new NullPointerException("年度必须大于等于1900年小于等于9999年");

    }

    Calendar cal = Calendar.getInstance();

    cal.setFirstDayOfWeek(Calendar.MONDAY); //设置每周的第一天为星期一

    cal.set(Calendar.DAY_OF_WEEK, Calendar.SUNDAY);//每周从周一开始

    // 上面两句代码配合,才能实现,每年度的第一个周,是包含第一个星期一的那个周。

    cal.setMinimalDaysInFirstWeek(7); //设置每周最少为7天

    cal.set(Calendar.YEAR, yearNum);

    cal.set(Calendar.WEEK_OF_YEAR, weekNum);

    return getFormatDate(cal.getTime());

    }

    11分享举报

    展开全文
  • 项目中常常用到,昵称一个月修改一次,活动一周参加一次等等...import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;/*** Created by xiaochun on 2016/3/24.*/public class Time...
  • java 获取一年的日期

    千次阅读 2018-11-09 16:36:50
    /**获取一年的日期  * @throws ParseException  */  public void getYearDate() throws ParseException {  String dateStart="2018-01-01";  String dateEnd="2018-12-31";  ...
  • 看到许多网友在获取第一天与最后一天时方法有点繁琐,推荐下面这种方法仅供参考。import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;/*** @author li_yueling* @version 1.0 ...
  • 1 importjava.text.ParseException;2 importjava.text.SimpleDateFormat;3 import java.util.*;45 public classTest {67 private staticDate deformatDatetime(String strDate, String fmt) {8 try{9 ...
  • ps:代码有参考别人的,非全部原创。已在正式项目上使用import java.text.SimpleDateFormat.../*** 获取 当前年、半年、季度、月、日、小时 开始结束时间*/private final SimpleDateFormat shortSdf;private final Sim...
  • packagecom.taiping.test;importjava.text.SimpleDateFormat;...public classDataUtil {/*** pattern格式的写法:yyyy:MM:月dd:日hh:1~12小时制(1-12)HH:24小时制(0-23)mm:分ss:秒S:毫秒E...
  • java程序如何判断是一年的第几天?实例代码介绍。在我们的实际开发中判断一中的某天是第几天是经常遇到的。那么如何实现这个要求呢?以下是相关的java程序代码案例。import java.util.Calendar;import java.util....
  • # java获取一年的周数、单周开始时间与结束时间、一年所有周开始时间与结束时间、月开始时间与结束时间 package com.frgk.produce.util; import org.springframework.util.CollectionUtils; import java.text....
  • import java.text.SimpleDateFormat;...public class DayTest { public static void main(String[] args) { try { // 获取当前时间 Calendar cal = Calendar.getInstance(); // 下面可以...
  • //方法一System.currentTimeMillis();//方法二Calendar.getInstance().getTimeInMillis();...获取当前时间SimpleDateFormatdf=newSimpleDateFormat("yyyy-MM-ddHH:mm:ss");//设置日期格式Stringdate=...
  • import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar; public class Test { // 获取当前时间所在的周数 public static int ge...
  • package ...import java.time.Instant;import java.time.LocalDateTime;import java.time.ZoneId;import java.util.Calendar;import java.util.TimeZone;public class CalendarAdjust {/**...
  • importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;public classDateUtil {/*** 默认日期格式*/public static String DEFAULT_FORMAT = "yyyy-MM-dd";/*** 测试主方法*@pa...
  • import java.sql.Timestamp;import java.text.DateFormat;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;import java.util.Locale;public class DateUt...
  • importjava.text.SimpleDateFormat;importjava.util.Calendar;importjava.util.Date;public classDateUtil {/*** 默认日期格式*/public static String DEFAULT_FORMAT = "yyyy-MM-dd";/*** 测试主方法*@pa...
  • } /** * 获取第一天日期 * @param year 年份 * @return Date */ public static Date getYearFirst(int year){ Calendar calendar = Calendar.getInstance(); calendar.clear(); calendar.set(Calendar.YEAR, ...
  • 产出:1999 这是我期望的输出,这在我的情况下是有意义的.但是,当我使用java.time API尝试相同的过程时,它会生成DatetimeParseException.以下是java.time API的以下代码: DateTimeFormatter TWO_YEAR_FORMATTER =...
  • java 获取一年的每一天

    千次阅读 2015-06-25 13:36:00
    import java.text.SimpleDateFormat; import java.util.Calendar; public class Test { private static SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); public static void ...
  • import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;...public class DateTest {// 获取当前时间所在的周数 public static int getWeekOfYear(Date date) {...
  • 上传的excel日期为“1988/9/1”,java使用jxl包读取结果为"19-9-1",年份缺少了前面的两位.解决方法是使用DateCell.如下面的代码:Cell cell=sheet.getCell(i, j);DateCell dc = (DateCell)cell;bean.setBirthday(dc....
  • //结束日期下滚一天是为了包含最后一天 while (c_begin.before(c_end)) { System.out.println("第" + count + "周 日期:" + new java.sql.Date(c_begin.getTime().getTime()) + "," + weeks[c_begin.get(Calendar....
  • 不知道大家在面试中有没有这种感觉:面试官通常会在短短两小时内对面试者的知识结构进行全面了解,面试者在回答问题时如果拖泥带水且不能直击问题的本质,则很难...这份笔记总共九大部分,涵盖了Java开发1Java...
  • // Java 8 11. LocalDateTime dt = LocalDateTime.now(); 12. System.out.println(dt.getYear()); 13. System.out.println(dt.getMonthValue()); // 1 - 12 14. System.out.println(dt.getDayOfMonth()); 15. ...
  • import java.text.SimpleDateFormat; import java.util.Calendar; import java.util.Date; import java.util.GregorianCalendar;   ... // 获取当前时间所在的周数  public static int ge
  • 一年有365天或者366天(闰年) public list<String> getYearDate(String year){ list<String> list=...(如2000是闰年,1900不是闰年) 3、对于数值很大的年份:这如果能被3200整除,并且能被172800整除则是闰年。
  • 展开全部计算一年有多少个周的636f707962616964757a686964616f31333337393632思路:首先,每年至少有52个周,至多有53个周,取决于周一是在哪(也可以定位周日,这个是由需求决定的),以下是详细代码,其中判断哪一...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 5,698
精华内容 2,279
关键字:

java获取年

java 订阅