日付形式の変換は、開発プロセス中に遭遇する一般的な問題です。
たとえば、次の形式の日付: 13.06.2017、2017/06/13、6月 13, 2017、6月 13, 2017。
固定形式の日付の場合、文字列インターセプトを使用して必要な形式にフォーマットできますが、汎用性が十分ではありません。
拡張メソッドは、日付を元の形式から必要な形式に変換します:
public static class CovertDateFormatExtensionMethod {/// <summary>/// 日期字符串转换/// </summary>/// <param name="date">日期字符串</param>/// <param name="fromDateFormat">原始日期格式</param>/// <param name="toDateFormat">转换后日期格式</param>/// <returns></returns>public static string Convert(this string date,string fromDateFormat, string toDateFormat) { DateTime dateTime = DateTime.ParseExact(date, fromDateFormat, System.Globalization.DateTimeFormatInfo.CurrentInfo);return dateTime.ToString(toDateFormat); } }
テスト コードは次のとおりです:
class Program {static void Main(string[] args) {//dd.MM.yyyystring date1 = "13.06.2017";//yyyy/MM/ddstring date2 = "2017/06/13";//yyyy年MM月dd日string date3 = "2017年06月13日";//yyyy年M月dd日string date4 = "2017年6月13日"; Console.WriteLine(string.Format("原始日期:{0},转换后日期:{1}", date1, date1.Convert("dd.MM.yyyy", "yyyy-MM-dd"))); Console.WriteLine(string.Format("原始日期:{0},转换后日期:{1}", date2, date2.Convert("yyyy/MM/dd", "yyyy-MM-dd"))); Console.WriteLine(string.Format("原始日期:{0},转换后日期:{1}", date3, date3.Convert("yyyy年MM月dd日", "yyyy-MM-dd"))); Console.WriteLine(string.Format("原始日期:{0},转换后日期:{1}", date4, date4.Convert("yyyy年M月dd日", "yyyy-MM-dd"))); Console.ReadKey(); } }
テスト結果:
以上が開発日形式の変換でよく発生する問題。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。