java实现将“yyyy-MM-dd”格式字符串转化成“yyyy年M月d日”格式

访客9年前 (2018-01-24)java技术7563

 

公共方法可直接套用:


          public static String getChinaDateFromString(String str) {
                try {
                    if(str==null ){
                        return getChinaCurrentDate();
                     }
                  str = str.trim();
                  int year = 0;
                  int month = 0;
                  int day = 0;
//                  System.out.println("==="+str);
                  if(str==null || str.equals("null") || str.equals("")){
                     return getChinaCurrentDate();
                  }
                  else if (str.indexOf("年") > 0||str.indexOf("月") > 0||str.indexOf("日") > 0) {
                    return str;
                  }
                  else {
                    if (str.length() == 10 && (str.indexOf("-") > 0)) { // by meconsea  add str.indexOf("-") > 0
                      year = Integer.parseInt(str.substring(0, 4));
                      month = Integer.parseInt(str.substring(5, 7));
                      day = Integer.parseInt(str.substring(8, 10));
                    }
                    else if (str.length() == 8) {
                      year = Integer.parseInt(str.substring(0, 4));
                      month = Integer.parseInt(str.substring(4, 6));
                      day = Integer.parseInt(str.substring(6, 8));
                    }
                    else if (str.length() == 6) {
                      year = Integer.parseInt(str.substring(0, 4));
                      month = Integer.parseInt(str.substring(4, 6));
                    }
                    if (day == 0)
                      str = year + "年" + month + "月";
                    else
                      str = year + "年" + month + "月" + day + "日";

                  }
                }
                catch (Exception e) {
                  e.printStackTrace();
                }
                return str;
              }
            
          public static String getChinaCurrentDate() {
                SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd");
                String str_date = dateFormat.format(Calendar.getInstance().getTime());
                str_date = str_date.substring(0, 4) + "年" + str_date.substring(4, 6) + "月" +
                    str_date.substring(6, 8) + "日 ";
                return str_date;
              }

      public static void main(String[] args) {
            System.out.println(getChinaDateFromString("2017-01-01"));
        }

测试运行结果:2017年1月1日

本文原创,转载必追究版权。

分享给朋友:

相关文章

org.tigris.subversion.javahl.ClientException:Attempted to lock an already-locked dir

 svn更新或提交时候报错:org.tigris.subversion.javahl.ClientException:Attempted to lock an already-locke...

java.lang.ClassNotFoundException: oracle.jdbc.driver.OralceDriver

 java.lang.ClassNotFoundException: Oracle.jdbc.driver.OracleDriver这个错误;原因可能是 少了驱动 ,少包class...

使用Myeclipse 8.5开发基于JAX-WS的Web service实例

 本文为Web service 开发入门篇,主要介绍在Myeclipse 8.5环境下开发Web service的服务程序和客户端程序的基本流程。 在Weblogic 11g...

目标管理法——目标分解法

让自己的人生更幸福更有意义关键是:要将梦想转化为具体的目标,然后合理的分解,达到量化,指标化!现将学习到的两种非常有效的目标分解法分享给所有梦想、有激情的朋友:祝愿大家都能梦想成真! 一、俄...

MyEclipse 中项目修改SVN的地址

MyEclipse 中项目修改SVN的地址

在工作环境调整时,有的时候SVN服务器的地址需要修改,而正在开发中的项目在Eclipse中有些代码没有提交,此时怎么修改SVN的地址呢?以下有一个简单的办法:一、在MyEclipse中选择Window...

office 2010安装、激活、激活工具下载

office 2010安装、激活、激活工具下载

 首先下载好工具包(包括office 2010安装程序、激活工具及Microsoft .NET Framework 4.0),点击工具包下载进行下载;安装好office 2010。如果是wi...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。