`
lthu
  • 浏览: 59227 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

java中关于星期时间的操作(收藏)

    博客分类:
  • java
阅读更多
java 代码
  1. java中关于星期时间的操作   
  2.   
  3. 在最近的一个OA中,我需要判断两个日期是否是同一周,根据一个给定的日期获得所属周的周一和周五的日期。   
  4.   
  5. 在完成以上任务时,我发现Calendar 的确是一个功能强大的class。   
  6.   
  7. 下面给出源码,供兄弟们参考指正。   
  8.   
  9.     
  10.   
  11. /*  
  12.  * 创建日期 2005-3-30  
  13.  
  14. package com.infoearth;  
  15.  
  16. import java.sql.Timestamp;  
  17. import java.text.*;  
  18. import java.util.*;  
  19. /**  
  20.  * @李春雷  
  21.  *  
  22. public class ManageWeek {  
  23.  //判断两个日期是否在同一周  
  24.  boolean isSameWeekDates(Date date1, Date date2) {  
  25.   Calendar cal1 = Calendar.getInstance();  
  26.   Calendar cal2 = Calendar.getInstance();  
  27.   cal1.setTime(date1);  
  28.   cal2.setTime(date2);  
  29.   int subYear = cal1.get(Calendar.YEAR) - cal2.get(Calendar.YEAR);  
  30.   if (0 == subYear) {  
  31.     if (cal1.get(Calendar.WEEK_OF_YEAR) == cal2.get(Calendar.WEEK_OF_YEAR))  
  32.    return true;  
  33.   }  
  34.   else if (1 == subYear && 11 == cal2.get(Calendar.MONTH)) {  
  35.     // 如果12月的最后一周横跨来年第一周的话则最后一周即算做来年的第一周  
  36.     if (cal1.get(Calendar.WEEK_OF_YEAR) == cal2.get(Calendar.WEEK_OF_YEAR))  
  37.    return true;  
  38.   }  
  39.   else if (-1 == subYear && 11 == cal1.get(Calendar.MONTH)) {  
  40.     if (cal1.get(Calendar.WEEK_OF_YEAR) == cal2.get(Calendar.WEEK_OF_YEAR))  
  41.    return true;  
  42.   }  
  43.   return false;  
  44.  }  
  45.    
  46.    
  47.  //产生周序列  
  48.  public static String  getSeqWeek(){  
  49.   Calendar c = Calendar.getInstance(Locale.CHINA);  
  50.   String week = Integer.toString(c.get(Calendar.WEEK_OF_YEAR));  
  51.   if(week.length()==1)week = "0" + week;  
  52.   String year = Integer.toString(c.get(Calendar.YEAR));    
  53.   return year+week;  
  54.     
  55.  }  
  56.     
  57.   //获得周一的日期  
  58.   public static String getMonday(Date date){  
  59.    Calendar c = Calendar.getInstance();  
  60.    c.setTime(date);  
  61.    c.set(Calendar.DAY_OF_WEEK,Calendar.MONDAY);  
  62.    return new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());  
  63.   }  
  64.     
  65.     
  66.   //获得周五的日期  
  67.   public static String getFriday(Date date){  
  68.    Calendar c = Calendar.getInstance();  
  69.    c.setTime(date);  
  70.    c.set(Calendar.DAY_OF_WEEK,Calendar.FRIDAY);     
  71.    return new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());    
  72.   }  
  73.  
  74. //当前日期前几天或者后几天的日期  
  75.  
  76.  public static String afterNDay(int n){  
  77.         Calendar c=Calendar.getInstance();  
  78.         DateFormat df=new SimpleDateFormat("yyyy-MM-dd");  
  79.         c.setTime(new Date());  
  80.         c.add(Calendar.DATE,n);  
  81.         Date d2=c.getTime();  
  82.         String s=df.format(d2);  
  83.         return s;  
  84.     }  
  85.     
  86.   public static void main(String[] args){  
  87.  
  88.   }  
  89.  
  90. }  
  91.  
  92.    
  93.  
  94. 经常碰到把一个字符串转成一个Date的问题,其实就3句话:  
  95.  
  96. String myString = "2005/12/20";  
  97.  
  98. SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd", Locale.CHINA);  
  99. Date d = sdf.parse(myString);  
  100.  
  101. 下面是个例子,存档  
  102.  
  103.  
  104. package formatdatetime;  
  105.  
  106. import java.text.*;  
  107. import java.util.*;  
  108.  
  109. /**  
  110.  * @author Administrator  
  111.  *  
  112.  * TODO 要更改此生成的类型注释的模板,请转至  
  113.  * 窗口 - 首选项 - Java - 代码样式 - 代码模板  
  114.  */  
  115. public class StringToDateTimeTest {   
  116.   
  117.  public static void main(String[] args) {   
  118.   
  119.   String myString = "Tue Oct 18 04:11:56 CST 2005";   
  120.   //String myString = "2005/12/20";   
  121.   try {   
  122.    SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd HH:mm:ss zzz yyyy", Locale.US);   
  123.    //SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd", Locale.CHINA);   
  124.    Date d = sdf.parse(myString);   
  125.    Calendar c = Calendar.getInstance();   
  126.    c.setTime(d);   
  127.    String s = new SimpleDateFormat("yyyy-MM-dd").format(c.getTime());   
  128.    System.out.println(s);   
  129.       
  130.   } catch (Exception e) {   
  131.    e.printStackTrace();   
  132.   }   
  133.  }   
  134. }   
  135.   
  136.   
  137. 转自:http://blog.csdn.net/lcllcl987/archive/2005/04/04/336050.aspx   
  138.   
  139.      
  140.   
  141. 原创文章如转载,请注明:转载自:巴士飞扬-技术BLOG : http://www.busfly.cn/   
  142.   
  143. 本文链接地址:http://www.busfly.cn/post/137.html    
  144.   
  145. 如果你喜欢本文,请顶一下,支持我,你的支持是我继续发好文章的最大动力。谢谢。    
  146. 好东西需要分享,快把本文发给你的朋友吧~!~   
分享到:
评论

相关推荐

    java获取星期几方法

    java中获取星期几的方法,简单的小程序,分享java中获取星期几的方法,简单的小程序

    JAVA_API1.6文档(中文)

    java.awt.dnd Drag 和 Drop 是一种直接操作动作,在许多图形用户界面系统中都会遇到它,它提供了一种机制,能够在两个与 GUI 中显示元素逻辑相关的实体之间传输信息。 java.awt.event 提供处理由 AWT 组件所激发的...

    java获取当前日期时间和本周的星期一的日期时间.docx

    在Java中,经常需要处理与日期和时间相关的操作,比如获取当前日期时间、计算本周的星期一等。这些操作可以通过`java.util.Calendar`类和`java.text.SimpleDateFormat`类来实现。 #### 1. 导入必要的类 首先,我们...

    java操作文件,得到文件名,大小,时间,及修改时间

    java操作文件,得到文件名,大小,时间,及修改时间java操作文件,得到文件名,大小,时间,及修改时间java操作文件,得到文件名,大小,时间,及修改时间

    Java万年历包含公历农历星期二十四节气

    在Java中,可以使用`java.util.Timer`和`java.util.TimerTask`类来创建定时任务,或者使用`java.time`包中的`ScheduledExecutorService`来实现更灵活的定时操作。用户设定的闹钟会被程序转化为相应的定时任务,并在...

    java swing 时间日期选择控件

    标签“java日期控件”强调了这个主题关注的是Java中与日期选择相关的控件,不仅仅是Swing,也可能是JavaFX或其他库提供的日期选择组件。但在这里,我们主要讨论的是Swing环境下的实现。 在压缩包的"swing 时间控件...

    Java API文档 中文网页版

    在Java中,API主要由Sun Microsystems(现为Oracle公司)维护,是Java平台的核心组成部分。它包括了Java标准库中的各种类库,如集合框架、输入/输出流、网络编程、多线程、图形用户界面(GUI)等。 Java API文档...

    Java 中文入门学习手册合集[chm版]

    语言入门 第一章 Java语言的产生及其...第九章 Java输入输出操作 java新手教程.chm JAVA_精通swing程序设计.chm JAVA_类库中文版Java API_Sun公司官方出版.chm JAVA_Thinking in Java(中文版 由yyc,spirit整理).chm

    Java自定义日期时间选择控件

    首先,我们需要理解Java中的日期时间处理。Java提供了`java.util.Date`、`java.util.Calendar`以及`java.text.SimpleDateFormat`等类来处理日期和时间。但这些原生API在处理复杂的用户界面交互时可能会显得不够灵活...

    ElasticSearch Java API 中文文档

    标题《ElasticSearch Java API 中文文档》表明本篇文档的主要内容是关于ElasticSearch的Java API的中文使用说明和相关知识点介绍。ElasticSearch是一个基于Lucene构建的开源搜索引擎,它提供了一个分布式、多用户...

    java源码包---java 源码 大量 实例

     Java二进制IO类与文件复制操作实例,好像是一本书的例子,源代码有的是独立运行的,与同目录下的其它代码文件互不联系,这些代码面向初级、中级Java程序员。 Java访问权限控制源代码 1个目标文件 摘要:Java源码,...

    Java日期管理程序

    java.util.Date 类是 Java 中最基本的日期类,提供了对日期和时间的操作和处理。 二、日期管理 日期管理是指对日期信息的存储、查询、修改和删除等操作。日期管理程序可以帮助用户快速查询和管理日期信息,例如...

    Java节假日算法(免费)

    Calendar 类是 Java 中用于处理日期和时间的类,而 Date 类是 Java 中用于表示日期和时间的类。在这个方法中,我们使用 Calendar 类来计算每个假期的天数,并将其添加到总天数中。 另一个重要的点是,我们需要考虑...

    java实现对图片的各种操作

    java实现对图片裁剪,并把裁剪新图片保存,按倍率缩小、放大图片,重置图形的边长大小,拼接图片等等操作 使用Java进行图像处理的一些基础操作,java实现对图片的各种操作下载

    java jdk 8 帮助文档 中文 文档 chm 谷歌翻译

    JDK1.8 API 中文谷歌翻译版 java帮助文档 JDK API java 帮助文档 谷歌翻译 JDK1.8 API 中文 谷歌翻译版 java帮助文档 Java最新帮助文档 本帮助文档是使用谷歌翻译,非人工翻译。准确性不能保证,请与英文版配合使用 ...

    Java OCR 图像智能字符识别技术,可识别中文

    Java OCR(Optical Character Recognition,光学字符识别)技术是一种计算机视觉领域的应用,它能将图像中的文字转换成可编辑的文本格式。这项技术在各种场景下都有广泛应用,比如文档扫描、车牌识别、发票处理等。...

    关于java的外文文献(中英对照)

    本文主要介绍了Java语言在因特网中的应用,讨论了Java语言的特点和优势,并对比了Java语言与其他编程语言的异同。 首先,Java语言是一种新的编程语言,它可以解决传统的程序设计问题,同时也可以解决World Wide Web...

    java倒计时源代码

    在Java中,倒计时通常通过`java.util.Timer`或`java.time`包中的类来实现。`Timer`类可以创建定时任务,按照预定的时间间隔执行特定的操作,比如更新倒计时的显示。而`java.time`包提供了更高级的时间和日期处理能力...

    JAVA8API-官方文档下载-中文版

    2. **Nashorn JavaScript引擎**: 提供了在Java中执行JavaScript代码的能力,便于混合编程。 3. **并行数组操作**: `java.util.parallel`包提供了并行版本的数组操作,如`Arrays.parallelSort()`。 4. **集合工厂...

    JAVA API官方文档 中文版

    `java.util`包含集合框架、日期时间、随机数生成等;`java.io`则涉及输入/输出流操作。 2. **网络编程**:`java.net`包提供了网络通信的支持,包括Socket和ServerSocket类,用于实现客户端和服务器端的连接。 3. *...

Global site tag (gtag.js) - Google Analytics