zoukankan      html  css  js  c++  java
  • 西暦=>和暦、和暦=>西暦

    #region 西暦=>和暦、和暦=>西暦
            /// <summary>
            /// 西暦=>和暦
            /// </summary>
            /// <param name="strDate">西暦日期</param>
            /// <param name="strWarekiFormat">例:ggyy年DD月dd日</param>
            /// <returns>例:平成23年08月03日 </returns>
            public string ConvertDateToWareki01(string strDate, string strWarekiFormat)
            {
                 string strWareki = "";
                 try
                 {
                     CultureInfo ci = new CultureInfo("ja-JP", true);
                     Calendar cal = new JapaneseCalendar();
                     ci.DateTimeFormat.Calendar = cal;
                     DateTime vCurrentDate = DateTime.Parse(strDate);

                     strWareki = vCurrentDate.ToString(strWarekiFormat, ci.DateTimeFormat);
                 }
                 catch
                 {
                 }
                return strWareki;
            }
            /// <summary>
            /// 西暦=>和暦
            /// </summary>
            /// <param name="strDate">西暦日期</param>
            /// <param name="strWarekiFormat">例:yy年DD月dd日</param>
            /// <returns>例:平23年08月03日</returns>
            public string ConvertDateToWareki02(string strDate, string strWarekiFormat)
            {
                string strWareki = "";
                try
                {
                    CultureInfo ci = new CultureInfo("ja-JP", true);
                    Calendar cal = new JapaneseCalendar();
                    ci.DateTimeFormat.Calendar = cal;
                    DateTime dt = DateTime.Parse(strDate);

                    strWareki = ci.DateTimeFormat.GetAbbreviatedEraName(cal.GetEra(dt)) + dt.ToString(strWarekiFormat, ci);
                }
                catch
                {
                }
                return strWareki;
            }
            /// <summary>
            /// 西暦=>和暦
            /// </summary>
            /// <param name="strDate">西暦日期</param>
            /// <param name="strWarekiFormat">例:yy年DD月dd日</param>
            /// <returns>例:H23年08月03日</returns>
            public string ConvertDateToWareki03(string strDate, string strWarekiFormat)
            {
                string strWareki = "";
                try
                {
                    string[] engEras = { "M", "T", "S", "H" };
                    CultureInfo ci = new CultureInfo("ja-JP", true);
                    Calendar cal = new JapaneseCalendar();
                    ci.DateTimeFormat.Calendar = cal;
                    DateTime dt = DateTime.Parse(strDate);

                    strWareki = engEras[cal.GetEra(dt) - 1] + dt.ToString(strWarekiFormat, ci);
                }
                catch
                {
                }
                return strWareki;
            }
            /// <summary>
            /// 西暦=>和暦
            /// </summary>
            /// <param name="strDate">西暦日期</param>
            /// <param name="strWarekiFormat">例:yy年DD月dd日</param>
            /// <returns>例:H23年08月03日</returns>
            public string ConvertDateToWareki04(string strDate, string strWarekiFormat)
            {
                string strWareki = "";
                try
                {
                    CultureInfo ci = new CultureInfo("ja-JP", true);
                    Calendar cal = new JapaneseCalendar();
                    ci.DateTimeFormat.Calendar = cal;
                    DateTime dt = DateTime.Parse(strDate);

                    Type t = typeof(DateTimeFormatInfo);
                    PropertyInfo pi = t.GetProperty("AbbreviatedEnglishEraNames", BindingFlags.NonPublic | BindingFlags.Instance);
                    string[] engEras = (string[])pi.GetValue(ci.DateTimeFormat, null);

                    strWareki = engEras[cal.GetEra(dt) - 1] + dt.ToString(strWarekiFormat, ci);
                }
                catch
                {
                }
                return strWareki;
            }
            /// <summary>
            /// 和暦=>西暦
            /// </summary>
            /// <param name="strWareki">和暦日期(例:平成23年08月03日、平23年08月03日、H23年08月03日)</param>
            /// <param name="strWarekiFormat">和暦日期と対応フォマット(例:yy年MM月dd日)</param>
            /// <param name="iStartIndex">元号の次位置</param>
            /// <param name="strDateFormat">例:yyyy/MM/dd</param>
            /// <returns>例:2011/08/03</returns>
            public string ConvertWarekiToDate(string strWareki, string strWarekiFormat, string strDateFormat,int iStartIndex)
            {
                string strDate = "";
                try
                {
                    CultureInfo ci = new CultureInfo("ja-JP", true);
                    Calendar cal = new JapaneseCalendar();
                    ci.DateTimeFormat.Calendar = cal;
                    strDate = DateTime.ParseExact(strWareki.Substring(iStartIndex, strWareki.Length - iStartIndex), strWarekiFormat, ci).ToString(strDateFormat);
                }
                catch
                {
                }
                return strDate;
            }
            #endregion

  • 相关阅读:
    Spring依赖注入的方式、类型、Bean的作用域、自动注入、在Spring配置文件中引入属性文件
    RESTful风格、异常处理、Spring框架
    文件上传、数据校验(后台)、拦截器
    接收的参数为日期类型、controller控制层进行数据保存、进行重定向跳转
    SpringMVC入门Demo
    Mybatis入门Demo(单表的增删改查)
    Spring
    spring的exception
    restful风格
    Java后台验证
  • 原文地址:https://www.cnblogs.com/secying/p/2125930.html
Copyright © 2011-2022 走看看