Applies ToSilverlight

關於此更新

在2019年5月1日,日文版行事曆中的新年代開始。 這是自1989年1月起,第一次從一個 era 轉換到另一個。 此 Microsoft Silverlight 更新修正日期時間計算,以處理日文行事曆中的新紀元並設定其格式。

支援日文時代的功能

範圍-放鬆

當 Heisei (平成)年代于2019年4月30日(Heisei (平成)31),而新的年代開始于5月1日,即2019,"平成31年 5 [1 月" 失效。 我們已將我們的分析程式放寬,允許日後及過去的日期(西曆和日文日期)轉換成相關的日文年代日期,而不會引發例外狀況。

例如,在前一個日文顯示時代,最大 Era 年份是64。 如果目前紀元的日期年份大於64,則目前的 Silverlight 程式碼無法解析日期。 如果它嘗試,將會引發例外狀況。  此更新修正了這個問題,即使年份超過最大 era 年,也會分析該日期。

下列範例示範所做的變更: DateTime.Parse("昭和 70/1/1 0:00:00", new CultureInfo("ja-JP") { DateTimeFormat = { Calendar = new JapaneseCalendar() } })

這個範例不會引發例外狀況。 相反地,它會成功分析日期,並傳回1/1/1995 12:00:00 AM (70– 64 = 6。 (Heisei era 已在1989中開始; 1989 + 6 = 1995)。

您也可以在推出新的日文年代名後,將 Heisei 中的未來日期轉換成新的日文年代。  

日文年代第一年的 Gannen (元年)

在 [進行中] 練習中,紀元的第一年是由特殊字元 "Gan (元)" (其日文中文字元代表 "來源" 或 "開頭")來表示,而不是「Ichi (1)」數位。 第一年 "Gannen (元年)" 在西曆行事歷年的結束日期(12月31日)後繼續。

此更新將允許 Silverlight 成功分析 Gannen (元年)個字元。 

注意: 如果要求 Silverlight 格式化 era 的第一個日期,silverlight 將會繼續傳回01 ,而不是。 您可以讓開發人員以 "元" 年份取代 "01" 年來修正此問題。  簡單的字串替換會達到此目的。

下列範例詳細說明 Silverlight 如何處理 Gannen (元年)的格式設定和分析。

表格式

string pattern = "gg yyyy'\u5E74' MM'\u6708' dd'\u65E5'"; //"gg yyyy'年' MM'月' dd'日'"

DateTime dt = new DateTime(1989, 01, 08); // Start of Heisei Era

string formattedDate = dt.ToString(pattern, jpnFormat);

更新前的行為: formattedDate是「平成01年01月 08 janvier」 更新後的行為: formattedDate是「平成01年01月 08 janvier」

更新前所存在的行為不會有任何變更。

Xdr

Ichinen (1年)

DateTime.TryParseExact("平成 01年 01月 08日", pattern, jpnFormat, DateTimeStyles.None, out parsedDate)

更新前的行為:傳回true ,且具有 {1/8/1989 12:00:00 AM} 的parsedDate Update 之後的行為:傳回true ,且具有 {1/8/1989 12:00:00 AM} 的parsedDate

更新前所存在的行為不會有任何變更。

Gannen (元年)

DateTime.TryParseExact("平成元年 01月 08日", pattern, jpnFormat, DateTimeStyles.None, out parsedDate)

Update 之前的行為:傳回false且具有 {1/1/0001 12:00:00 AM} 的parsedDate Update 之後的行為:傳回true ,且具有 {1/8/1989 12:00:00 AM} 的parsedDate

Need more help?

Want more options?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。