java时间小工具

老徐的1986 老徐的1986     2022-11-29     689

关键词:

 

/**

* 获取当月的工作日(国家规定补班的无法分辨,仅限周末和国家规定节假日除外)

* @author xujinbo

*/

public class WorkDaysUtil


   public static  List<Date> getWorkDates(int year, int month)


       List<Date> dates = new ArrayList();


       Calendar cal = Calendar.getInstance();


       cal.set(Calendar.YEAR, year);


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


       cal.set(Calendar.DATE, 1);


       while (cal.get(Calendar.YEAR) == year &&


               cal.get(Calendar.MONTH) < month)


           int day = cal.get(Calendar.DAY_OF_WEEK);


           if (!(day == Calendar.SUNDAY || day == Calendar.SATURDAY))

               Date clone = (Date)cal.getTime().clone();

               dates.add(clone);

           


           cal.add(Calendar.DATE, 1);


       

       return dates;


   



   /**

    * 获取当前年

    * @return

    */

   public static int getYear()

       Calendar calendar = Calendar.getInstance();

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

       return year;

   

   /**

    * 获取当前月

    * @return

    */

   public static int getMonth()

       Calendar calendar = Calendar.getInstance();

       //记得要+1

       int month = calendar.get(Calendar.MONTH) + 1;

       return month;

   



   /**

    * 改变date格式

    * @param list

    * @return

    */

   public static Set<String> makeDateToString(List<String> list)

       Set<String> set = new HashSet<>();

       for (String date:list)

           Date time = new Date(date);

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

           String dateFormat = sdf.format(time);


           set.add(dateFormat);

       

       return  set;

   


   /**

    * Date 当日最大时间

    * @param date

    * @return

    */

   public  static  Date getDateMaxOrMin(Date date,String type)

       Calendar calendar = DateUtils.toCalendar(date);

       if("MAX".equals(type))

           calendar.set(Calendar.HOUR_OF_DAY, calendar.getActualMaximum(Calendar.HOUR_OF_DAY));

           calendar.set(Calendar.MINUTE, calendar.getActualMaximum(Calendar.MINUTE));

           calendar.set(Calendar.SECOND, calendar.getActualMaximum(Calendar.SECOND));

           date = calendar.getTime();

       

       else

           calendar.set(Calendar.HOUR_OF_DAY, calendar.getActualMinimum(Calendar.HOUR_OF_DAY));

           calendar.set(Calendar.MINUTE, calendar.getActualMinimum(Calendar.MINUTE));

           calendar.set(Calendar.SECOND, calendar.getActualMinimum(Calendar.SECOND));

           date = calendar.getTime();

       

       return date;

   



   /**

    * Date转为LocalDate

    * @param date

    * @return

    */

   public static LocalDate dateTOLocalDate(Date date)

       LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();

       return localDate;

   


   //获取目标年份中目标月的第一天的开始时间

   public static Date getFirstDayOfMonth(String year,String month)

       final Calendar cal = Calendar.getInstance();

       cal.set(Calendar.YEAR,Integer.parseInt(year));

       cal.set(Calendar.MONTH,Integer.parseInt(month)-1);

       cal.set(Calendar.HOUR_OF_DAY,0);

       cal.set(Calendar.MINUTE,0);

       cal.set(Calendar.SECOND,0);

       //获取目标月和目标年份的当月第一天时间

       final int start =Calendar.YEAR;

       cal.set(Calendar.DAY_OF_MONTH, start);

       return cal.getTime();

   



   /**

    * 获得本月第一天

    * @return

    */

   public static String getMonthfirstDay()

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

       Date date = new Date();

       Calendar calendar = new GregorianCalendar();

       calendar.setTime(date);


       calendar.add(Calendar.MONTH, 0);

       calendar.set(Calendar.DAY_OF_MONTH, 1);

       String firstDay = sdf.format(calendar.getTime());


       return firstDay;

   


   /**

    * //获得本月最后一天

    * @return

    */

   public static String getMonthLastDay()

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

       Date date = new Date();

       Calendar calendar = new GregorianCalendar();

       calendar.setTime(date);

       calendar.add(Calendar.MONTH, 0);

       calendar.set(Calendar.DAY_OF_MONTH, 1);

       calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH));

       String lastDay = sdf.format(calendar.getTime());


       return lastDay;

   


java编写一个图形化小工具,功能类似系统工具dir,可查看用户给定文件的创建时间、文件类型、文件大小等

创建时间、文件大小等信息可直接通过file类取得,文件类型需要写方法判断,接受用户输入的文件名,截取其后缀,根据其后缀判断文件的类型。例如后缀为.java的是Java的源程序文件,后缀为.txt的是文本文件。给部分提示也行... 查看详情

一个我自己用的小工具

最近一段时间,事越来越多,要做的事情越来越多,需要的工具越来越多,好多工具都要自己写,所以我又把我以前写的一个脚本工具弄出来了,一个小的脚本工具,能做几乎所有事情,(就是有些简单有些麻烦而以), 打... 查看详情

java开发小工具累计(代码片段)

arraytolistInteger[]spam=newInteger[]1,2,3;List<Integer>rlt=Arrays.asList(spam);Object[]tolist<T>List<Object>objects=getObjects();List<CustomClass>customObjects=myFilter(obje 查看详情

可以嵌入网站中用作在线绘图工具的绘图/素描小部件

...hingwidgetthatcanbeembeddedinwebsitestobeusedasanonlinedrawingtool【发布时间】:2012-08-0906:21:41【问题描述】:我正在寻找以Java、Flash、HTML5和JAVASCRIPT或任何其他方式编写的提供以下功能的非商业或商业在线小部件/工具:可以嵌入网站中(如ja... 查看详情

java小工具——timer(代码片段)

定时器Timer用途:做定时器用的。publicstaticvoidmain(String[]args)Timertimer=newTimer();timer.schedule(newTimerTask()@Overridepublicvoidrun()System.out.println("hello!");,newDate(System.currentTimeMillis()+5000),1000);//延迟5s执行,没1s执行一次 查看详情

java小技能:集成开发工具(ide)

文章目录IIDEA1.1下载1.2试用II忽略IntelliJIDEA文件2.1.gitignore的例子2.2从idea进行忽略IIIidea使用非模式提交界面IVDataGrip4.1安装4.2Act4.3zh_CNseealsoIIDEA1.1下载https://www.jetbrains.com/zh-cn/idea/download/other.html 查看详情

jdk9版本以上java独有的一个轻量级小工具,你知道吗?jshell(代码片段)

...hell,是JavaJDK9这个大版本更新以来,带来的一个轻量级小工具。我们再也不用进入Java目录,编写一个Java文件,然后再去编译,最后才能执行它。这里,你可以直接写一个小功能,就能去实现它。这就是jshell带来的一个小便利。... 查看详情

uniapp窗口小工具桌面小部件微件(日历时间)ba-awcalendars(代码片段)

...具(桌面小部件、微件)插件,默认为简单的时间样式,有其他界面需要,可联系作者定制。支持定时更新(本插件为每分钟)支持点击事件监听支持手动更改页面内容支持应用内添加小部件到桌面支... 查看详情

java几个实用的小工具(代码片段)

1、除法运算编程的人都知道,java中的“/”、“%”运算,其中前者为取整,后者取余数。那么有没有快捷的运算方法取正常的运算结果呢?查了资料,发现很简单。代码如下:publicstaticStringtxfloat(inta,intb)DecimalFormatdf=... 查看详情

java在线编程工具上线(直接编译运行java代码)

前言大家好,我是小哈~周末没出去浪,花了点时间,在我的个人网站上线了一款小工具。啥工具呢?一款可以在线编译Java代码并运行输出结果的小工具。大家都知道,甲骨文刷Java版本号非常积极,这不上个月20版本又来了。你... 查看详情

mysql数据库同步小工具(java实现)

近期公司做个报表系统,为了报表系统中复杂的查询条件,不影响线上业务系统的使用,研究了一下MySQL数据库同步,下面用Java代码实现MySQL数据库同步,以便自己查阅!?数据库同步实现功能点:1.支持跨服务器跨库的多线程同... 查看详情

网页抓取小工具(ie法)

网页抓取小工具(IE法)——吴姐http://club.excelhome.net/thread-1095707-1-1.html用IE提取网页资料的好处在于:所见即所得,网页上能看到的信息一般都能获取。本工具功能不多,主要是便于提取网页上展示的信息所在元素的代码。希望... 查看详情

java小工具驼峰命名转下划线命名parsingcamelcasetounderline(代码片段)

JAVA小工具驼峰命名转下划线命名publicstaticStringparsingCamelCaseToUnderline(Stringparams)char[]charArray=params.toCharArray();params="";for(inti=0;i<charArray.length;i++)charc=charArray[i];if(i==0)params+=Character.toLowerCase(c);elsepa... 查看详情

java小工具驼峰命名转下划线命名parsingcamelcasetounderline(代码片段)

JAVA小工具驼峰命名转下划线命名publicstaticStringparsingCamelCaseToUnderline(Stringparams)char[]charArray=params.toCharArray();params="";for(inti=0;i<charArray.length;i++)charc=charArray[i];if(i==0)params+=Character.toLowerCase(c);elsepa... 查看详情

用了这个java小工具,我废了

...的业务是完全无关的,就可能会耽误一些项目的开发时间!我们都喜欢白piao,那么有没有现成的util工具包给我们用呢?来了来了,Hutool工具库࿰ 查看详情

用了这个java小工具,我废了(代码片段)

👇👇关注后回复 “进群” ,拉你进程序员交流群👇👇作者丨鱼皮来源丨程序员鱼皮(ID:coder_yupi)大家好,我是鱼皮。我们在开发时,经常需要重复编写很多和业务无关的代码,比... 查看详情

通过 gadgets.rpc 进行 OpenSocial 小工具到小工具的通信

...标题】:OpenSocialgadget-to-gadgetcommunicationviagadgets.rpc【发布时间】:2010-11-1921:54:03【问题描述】:我可以举一个使用gadgets.rpcAPI在两个OpenSocial小工具之间进行通信的示例吗?我已经搜索了一个,但我能找到的最接近的是一个已弃用... 查看详情

uniapp窗口小工具桌面小部件微件(日历时间)ba-awcalendars(代码片段)

...具(桌面小部件、微件)插件,默认为简单的时间样式,有其他界面需要,可联系作者定制。支持定时更新(本插件为每分钟)支持点击事件监听支持手动更改页面内容支持应用内添加小部件到桌面支... 查看详情