Response.LCID

LCID属性指定了如何格式化日期、时间和货币。本地标识符(LCID)对每个地理本地性都不是同的。有些本地性把日期格式化为YY-MM-DD,也有些把日期格式化为MM-DD-YYYY。LCID属性是可读可写的。

Note:
在可以在一个Web网页或应用程序中指定本地标识符之前,本地组已经安装到Web服务器上了Use theRegional and Language Options control panel application to install locale groups.

句法

Response.lcid [=LocaleID]

参数

LocaleID
一个整型数,代表地理本地性。你可以在MSDN Library中找到本地专有的代码页面信息。

适用于

Response对象

备注

显式设置Response.LCID会影响一个网页,而设置Session.LCID会影响会话中的所有的响应。

如果没有在一个网页上显式设置Response.LCID,如果启用了会话的话,Session.LCID会潜在地设置它。如果没有启用会话,如果网页中出现了@LCID,就由@LCID来设置Response.LCID。如果网页中没有@LCID,就由AspLCID元数据属性来设置Response.LCID。如果没有设置AspLCID属性,或者该属性被设置为0,就由系统默认本地性来设置Response.LCID

可以在一个Web网页中设置Response.LCID多次,每次都用来格式化日期。有些本地性需要设置匹配的code以正确地显示字符集。举个例子,为了在一个网页上显示若干种本地性格式的日期和时间,code page一定得被设置为UTF-8(65001)以显示所有的字符。

如果你显式地设置了Response.LCIDSession.LCID请在显示格式化的输出之前先做好。设置Response.LCID改变了ASP应用程序和脚本引擎的本地性。使用VBScript函数setLocale()只能对脚本引擎改变本地性。

However, setting the value is recommended.

如果在一个网页中设置了本地性,而且code page被设置为正确地显示字符,则还应设置Response.Charset。这个code page值告诉IIS在建立响应时如何编码数据,而Charset值指定了浏览器在显示响应时如何解码数据。Response.Charset的CharsetName一定得匹配code page值,否则浏览器中会显示混乱的字符。欲进一步了解,请参阅MSDN Web Workshop中的CharsetName和匹配的code page值的列表,在Preferred Charset Label和FamilyCodePage列的下面。

如果你正在编写并测试使用多种本地性、code page和字符集的网页(举个例子,如果你正在创建一个多国语言的网站),请记住你的测试客户端浏览器一定得已经把你想要显示的每种语言的语句包都安装好了。你可在以控制面板中,从区域和语言选项中安装语句包。

示例代码

下面的示例显示了日期、时间和钱的总额,以及在不同本地性的十进制值。code page被设置为UTF-8以正确地显示所有的字符。

--- Response_LCID.asp ---

<% 
' This file does not need @LCID or @CODEPAGE and 
'  it does not need to be saved in UTF-8 format because  
'  there are no literal strings that need formatting or encoding. 

Response.Codepage = 65001 
Response.Charset = "utf-8" 

' See what happens when you uncomment the lines below. 
'Response.Codepage = 1252 
'Response.Charset = "windows-1252" 

ShowDateTimeCurrency 1033, "North America" 
ShowDateTimeCurrency 1041, "Japan" 
ShowDateTimeCurrency 1049, "Russia" 
ShowDateTimeCurrency 1031, "Germany" 
ShowDateTimeCurrency 1025, "Saudi Arabia" 
ShowDateTimeCurrency 1081, "India" 
ShowDateTimeCurrency 2052, "China" 
ShowDateTimeCurrency 1042, "Korea" 

Sub ShowDateTimeCurrency(iLCID, sLocale) 
  Response.LCID = iLCID 
  Response.Write "<B>" & sLocale & "</B><BR>" 
  Response.Write FormatDateTime(Date, 1) & "<BR>" 
  Response.Write FormatDateTime(Time, 3) & "<BR>" 
  Response.Write FormatCurrency(1000) & "<BR>" 
  Response.Write FormatNumber(50, 3, 0, 0, -1) & " & " & FormatNumber(.02, 3, 0, 0, -1) & "<BR><BR>" 
End Sub 
%>

必备条件

Client: Requires or Windows XP Professional.

Server: Requires or Windows Server 2003.

Product: IIS

如果你喜欢这篇文章,敬请给站长打赏↑

除特别注明外,本站所有文章均为本站站长原译,转载请注明出处。