製作 Global 網站時,由於User來自世界各地
而各地對於時間格式以及貨幣,數字顯示方式都有所不同
這時就需要 .NET Globalization -> CultureInfo 來處理這個問題
CultureInfo 是基於 Language Code 來的
而 user 的 Language Code 基本上瀏覽器會放在 Request Header 送到Server
(ex. Accept-Language: zh-TW,zh;q=0.8,en-US;q=0.6,en;q=0.4)
Dim d As Date = Now
Dim n As Decimal = 86400.99
Dim Cultures() As String = {"zh-TW", "pt-BR", "pt-PT", "en-US", "en-GB", "fr-FR", "de-DE", "es-ES", "ja-JP", "zh-CN", "ko-KR", "en-IN"}
For i As Integer = 0 To Cultures.GetUpperBound(0)
Dim c As New Globalization.CultureInfo(Cultures(i))
Response.Write(Cultures(i) & "<br/>" & d.ToString("D", c) & " <br/>" & d.ToString("d", c) & "<br/>" & n.ToString("C", c))
Response.Write("<hr/>")
Next
結果如下:
zh-TW
2013年12月25日
2013/12/25
NT$86,400.99
pt-BR
quarta-feira, 25 de dezembro de 2013
25/12/2013
R$ 86.400,99
pt-PT
quarta-feira, 25 de Dezembro de 2013
25-12-2013
86.400,99 €
en-US
Wednesday, December 25, 2013
12/25/2013
$86,400.99
en-GB
25 December 2013
25/12/2013
£86,400.99
fr-FR
mercredi 25 décembre 2013
25/12/2013
86 400,99 €
de-DE
Mittwoch, 25. Dezember 2013
25.12.2013
86.400,99 €
es-ES
miércoles, 25 de diciembre de 2013
25/12/2013
86.400,99 €
ja-JP
2013年12月25日
2013/12/25
¥86,401
zh-CN
2013年12月25日
2013/12/25
¥86,400.99
ko-KR
2013년 12월 25일 수요일
2013-12-25
₩86,401
en-IN
25 December 2013
25-12-2013
₹ 86,400.99