1. /*
  2. *java中对日期的加减操作
  3. *gc.add(1,-1)表示年份减一.
  4. *gc.add(2,-1)表示月份减一.
  5. *gc.add(3.-1)表示周减一.
  6. *gc.add(5,-1)表示天减一.
  7. *以此类推应该可以精确的毫秒吧.没有再试.大家可以试试.
  8. *GregorianCalendar类的add(int field,int amount)方法表示年月日加减.
  9. *field参数表示年,月.日等.
  10. *amount参数表示要加减的数量.
  11. *
  12. * UseDate.java 测试如下:
  13. */
  14. import java.util.Calendar;
  15. import java.util.Date;
  16. import java.util.GregorianCalendar;
  17. import java.util.Locale;
  18. import java.text.ParseException;
  19. import java.text.ParsePosition;
  20. import java.text.SimpleDateFormat;
  21. public class UserDate {
  22. /***对时间进行加减运算****/
  23. Date d=new Date();
  24. GregorianCalendar gc =new GregorianCalendar();
  25. SimpleDateFormat sf  =new SimpleDateFormat("yyyy-MM-dd"); //日期格式化
  26. //当前时间
  27. public String getLocalDate()
  28. {
  29. return sf.format(d);
  30. }
  31. //年份
  32. public String getYears()
  33. {
  34. gc.setTime(d);
  35. gc.add(1,+1);
  36. gc.set(gc.get(Calendar.YEAR),gc.get(Calendar.MONTH),gc.get(Calendar.DATE));
  37. return sf.format(gc.getTime());
  38. }
  39. //月份
  40. public String getHalfYear()
  41. {
  42. gc.setTime(d);
  43. gc.add(2,+6);
  44. gc.set(gc.get(Calendar.YEAR),gc.get(Calendar.MONTH),gc.get(Calendar.DATE));
  45. return sf.format(gc.getTime());
  46. }
  47. //月份
  48. public String getQuarters()
  49. {
  50. gc.setTime(d);
  51. gc.add(2,+3);
  52. gc.set(gc.get(Calendar.YEAR),gc.get(Calendar.MONTH),gc.get(Calendar.DATE));
  53. return sf.format(gc.getTime());
  54. }
  55. //天数
  56. public String getDate(){
  57. gc.setTime(d);
  58. gc.add(5, +11);
  59. gc.set(gc.get(Calendar.YEAR), gc.get(Calendar.MONTH), gc.get(Calendar.DATE));
  60. return sf.format(gc.getTime());
  61. }
  62. //对时间进行格式化
  63. public String getSimpleDateFormat(){
  64. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
  65. String time = sdf.format(new Date());
  66. return time;
  67. }
  68. //时间加减运算的结果
  69. public int day(){//s1小s2大
  70. String s1 = "2011-09-10";
  71. String s2 = "2011-09-19";
  72. int day=0;
  73. try{
  74. SimpleDateFormat formatter = new SimpleDateFormat ("yyyy-MM-dd");
  75. ParsePosition pos = new ParsePosition(0);
  76. ParsePosition pos1 = new ParsePosition(0);
  77. Date dt1=formatter.parse(s2,pos);
  78. Date dt2=formatter.parse(s1,pos1);
  79. long l = dt1.getTime() - dt2.getTime();
  80. day=(int)(l/(3600*24*1000));
  81. }catch(Exception e){
  82. System.out.println("exception"+e.toString());
  83. }
  84. return day;
  85. }
  86. public String StringToDateTime(){
  87. String myString = "Tue   Oct   18   04:11:56   CST   2005 ";
  88. String s = null;
  89. try   {
  90. SimpleDateFormat   sdf   =   new   SimpleDateFormat( "EEE   MMM   dd   HH:mm:ss   zzz   yyyy ",   Locale.US);
  91. Date   d   =   sdf.parse(myString);
  92. Calendar   c   =   Calendar.getInstance();
  93. c.setTime(d);
  94. s = new   SimpleDateFormat( "yyyy-MM-dd ").format(c.getTime());
  95. System.out.println(s);
  96. }   catch   (Exception   e)   {
  97. e.printStackTrace();
  98. }
  99. return s;
  100. }
  101. //String类型时间转为Date类型时间
  102. public String StringToDateTime2(){
  103. String time = "2011-09-19";
  104. SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd", Locale.CHINA);
  105. Date timetoString = null;
  106. try {
  107. timetoString = sdf.parse(time);
  108. } catch (ParseException e) {
  109. // TODO Auto-generated catch block
  110. e.printStackTrace();
  111. }
  112. System.out.println("转化后的Date类型:"+timetoString);
  113. String s = sdf.format(timetoString);
  114. return s;
  115. }
  116. public static  void  main(String[] args)
  117. {
  118. UserDate ud= new UserDate();
  119. System.out.println("时间格式化:"+ud.getSimpleDateFormat());
  120. System.out.println("当前时间:"+ud.getLocalDate());
  121. System.out.println("年份加一:"+ud.getYears());
  122. System.out.println("月份加六:"+ud.getHalfYear());
  123. System.out.println("月份加三:"+ud.getQuarters());
  124. System.out.println("天数加十一:"+ud.getDate());
  125. System.out.println("对时间进行加减运算的结果:"+ud.day());
  126. System.out.println("String类型时间转换为Date类型时间:"+ud.StringToDateTime());
  127. System.out.println("格式化后的时间:"+ud.StringToDateTime2());
  128. }
  129. }

转载于:https://blog.51cto.com/xieyang/707613

java中对时间的操作相关推荐

  1. Java中有关日期的操作,昨天晚上赴约,搞到12点多才回来,今天写这一小段代码都花了一段漫长的时间,哎。。...

    Java中有关日期的操作,昨天晚上赴约,搞到12点多才回来,今天写这一小段代码都花了一段漫长的时间,哎.. 代码奉上: /** * * @param date * @return which mont ...

  2. Java中的时间和日期(下)

    转载请注明出处:http://blog.csdn.net/wl9739/article/details/51882913 在上篇文章Java中的时间和日期(上)里面,简单介绍了Java中的Date类, ...

  3. Java中的时间和日期(上)

    自从JDK 1.0开始,Java就提供了Date来处理时间和日期,作为老古董自然有很多东西是过时的.然后出现了Calendar来解决了很多问题,但是Calendar使用比较复杂,并且有些反人类的地方. ...

  4. Java中的文件输入输出操作如何实现

    Java是一门广泛应用的编程语言,它被用于开发各种类型的应用程序,包括桌面应用.服务器端应用和移动应用.在Java中,文件输入输出操作是很常见的,因为它们可以用于读取和写入文件数据.在本文中,我们将探 ...

  5. Java中的时间与时区__java

         转:https://yq.aliyun.com/ziliao/245667      摘要: 本文讲的是Java中的时间与时区__java, 0. 前言: 时间格式: //世界标准时间,其中 ...

  6. Java中的图像锐化操作

    ** Java中的图像锐化操作 ** 一.该图像锐化的思想: 本文的图像锐化是将图像中的R,G,B的值分别从原图像中提出,然后将分别将这三个R,G,B的值分别与卷积核进行卷积,最终再将最后的三个卷积的 ...

  7. Java中Properties类的操作

    Java中Properties类的操作 ============================================= com.gordon.constant Constant.java: ...

  8. Java中的对象序列化操作

    文章目录 1 Java中的对象序列化操作 1 Java中的对象序列化操作 首先看一下对象序列化的操作步骤: 创建一个类,继承Serializable接口 创建对象 将对象写入文件 从文件读取对象信息 ...

  9. oracle sql比较时间大小,Oracle数据库中日期时间的操作比较和加减

    Oracle数据库中日期时间的操作比较和加减 Oracle关于时间/日期的操作 1.日期时间间隔操作 当前时间减去7分钟的时间 select sysdate,sysdate - interval '7 ...

最新文章

  1. 利用ZYNQ SOC快速打开算法验证通路(5)——system generator算法IP导入IP integrator
  2. 2021 线性代数 第三章 习题课
  3. 秋色园QBlog技术原理解析:性能优化篇:数据库文章表分表及分库减压方案(十五)...
  4. 运用Kubernetes进行分布式负载测试
  5. 软件测试入门三年经验
  6. Win2003 Server 安全的个人Web服务器
  7. ubyntu 链接mysql_ubuntu mysql 的安装、配置、简单使用,navicat 连接
  8. webstorm设置文件类型
  9. linux文件内上下移动,Linux中有多个查看文件的命令,如果希望在查看文件内容过程中用光标可以上下移动来查看文件内容,则符合要求的那一个命令是( )。...
  10. HTML网页设计:七、表格
  11. mp4 文件中的h264 avc1格式介绍
  12. 应用宝上架审核要求_应用宝应用市场APP上架首发申请
  13. ​Aruba 无线控制器本地账号登录密码重置
  14. 马云重构阿里:或分拆成30家公司 整合3家上市
  15. js双击编辑文本(单个)
  16. mac的系统语言怎么设置为中文
  17. 第十二届蓝桥杯国赛真题+题解 Python
  18. 小丸子学Docker系列之——安装Docker及基本命令的使用
  19. BUUCTF [GXYCTF2019] 禁止套娃
  20. JAVA高级(一)——lambda

热门文章

  1. 12款程序员专用chrome插件神器推荐
  2. 如何在Go中使用切片容量和长度
  3. android开发 问卷调查案例_Android开发Handler的简单使用——随机点名案例
  4. 面试题:双重检验锁⽅式实现 单例模式
  5. T-SQL高级查询语句
  6. Flutter中消息传递
  7. php微框架 flight源码阅读
  8. xml 连表查询(2) --自关联! 查询父类name,显示父类下的所有子类
  9. 技术人生:给自己安慰的10句温馨话
  10. 算法总结之求解模线性方程组