<fmt:setLocale>
標籤用於在locale
組態變數中儲存給定的區域設定。
<fmt:setLocale>
標籤具有以下屬性 -
屬性 | 描述 | 必需 | 預設 |
---|---|---|---|
value |
指定表示ISO-639 語言程式碼和ISO-3166 國家程式碼的兩部分程式碼。 |
是 | en_US |
variant |
瀏覽器特定的變體 | 否 | — |
scope |
區域組態變數的範圍 | 否 | — |
資源系結包包含區域特定的物件,資源系結包含鍵/值對。當程式需要特定於區域設定的資源時,可以將所有鍵保留在所有區域設定中,也可以使用特定於區域設定的翻譯值。 資源系結包有助於提供特定於區域設定的內容。
Java資源包檔案包含一系列鍵到字串的對映。這裡使用的方法是建立擴充套件java.util.ListResourceBundle
類的Java類。必須編譯這些類檔案並使其可用於Web應用程式的類路徑(使用Eclipse不需要此操作)。
下面定義一個資源系結包如下 -
檔案:Example_Cn.java -
package com.yiibai;
import java.util.ListResourceBundle;
public class Example_Cn extends ListResourceBundle {
public Object[][] getContents() {
return contents;
}
static final Object[][] contents = { { "count.one", "一個" }, { "count.two", "兩個" }, { "count.three", "三個" }, };
}
下面是顯示JSP頁面的程式碼 -
檔案:fmt_setLocale.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.util.*"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<html>
<head>
<title>JSTL fmt:setLocale標籤</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
</head>
<body>
<div style="margin: auto; width: 80%">
<fmt:setLocale value="zh_cn" />
<fmt:formatNumber value="101000.3" type="currency" />
<br />
<fmt:setLocale value="en_Us" />
<fmt:formatNumber value="101000.3" type="currency" />
<br />
<fmt:setLocale value="zh_cn" />
<fmt:formatDate value="<%=new Date()%>" />
<br />
<fmt:setLocale value="zh_tw" />
<fmt:formatDate value="<%=new Date()%>" />
<fmt:setLocale value="zh_cn" />
<fmt:formatDate value="<%=new Date()%>" />
<br />
<fmt:setLocale value="de_de" />
<fmt:formatDate value="<%=new Date()%>" />
<br />
<!-- Change the Locale -->
<fmt:setLocale value="zh_cn" />
<fmt:bundle basename="com.yiibai.Example_Cn">
<fmt:message key="count.one" />
<br />
<fmt:message key="count.two" />
<br />
<fmt:message key="count.three" />
<br />
</fmt:bundle>
</div>
</body>
</html>
編譯上述的Example_Cn
,現在可以使用以下JSTL標籤來顯示以下三個數位,程式碼執行結果如下 -
可通過檢視<fmt:bundle和<setBundle標籤來了解完整的概念。