在 .NET 裡有個用來表示星期的列舉:DayOfWeek,使用起來很方便,但是有時候又不是那麼方便…
為了取得中文顯示名稱,常常會看到類似底下的程式碼…
日後有了新的需求,除了要可以取得中文名稱外,同時因應日本客戶的需求,也要可以取得日文名稱。
於是我看到了底下的程式碼…
偶爾硬幹一下是無傷大雅啦!反正看起來也簡單明瞭…
但是當語言需求越來越多時,在可能根本不懂該語言的情況下,開發者只能用大量測試案例來確保程式(應該)是對的!?
為何不交給 .NET 來處理呢?
在命名空間 System.Globalization 下的 CultureInfo 類別,是用來表達文化特性(可視為地區或語系設定)的類別。
使用類別中的屬性 DateTimeFormat 可以輕鬆地解決取得星期簡稱與完整名稱的需求。
使用 CurrentCulture 時,會以應用程式所在主機預設的地區或語系設定來進行轉換。
如果想要顯示日文名稱怎麼辦?如果想要顯示中文名稱,可是應用程式所在主機的作業系統卻是英文版怎麼辦?
參考各國語系對應表(Table of Language Culture Names, Codes, and ISO Values (PIA)),只要傳入對應的語系名稱,.NET 就會轉換為該語系的顯示名稱。
嘗試將自己的理解寫成文字紀錄,資料來源均來自於網路。
如有理解錯誤、引用錯誤或侵權,請多加指正與告知,讓我有更多的進步與改進的空間,謝謝!