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

  • 相关阅读:
    中国石油昆仑加油卡
    157 01 Android 零基础入门 03 Java常用工具类01 Java异常 01 异常介绍 02 异常内容简介
    156 01 Android 零基础入门 03 Java常用工具类01 Java异常 01 异常介绍 01 Java常用工具类简介
    155 01 Android 零基础入门 02 Java面向对象 07 Java多态 07 多态知识总结 01 多态总结
    154 01 Android 零基础入门 02 Java面向对象 07 Java多态 06 内部类 05 匿名内部类
    153 01 Android 零基础入门 02 Java面向对象 07 Java多态 06 内部类 04 方法内部类
    152 01 Android 零基础入门 02 Java面向对象 07 Java多态 06 内部类 03 静态内部类
    151 01 Android 零基础入门 02 Java面向对象 07 Java多态 06 内部类 02 成员内部类
    150 01 Android 零基础入门 02 Java面向对象 07 Java多态 06 内部类概述 01 内部类概述
    149 01 Android 零基础入门 02 Java面向对象 07 Java多态 05 接口(重点)07 接口的继承
  • 原文地址:https://www.cnblogs.com/secying/p/2125930.html
Copyright © 2011-2022 走看看