[英]Unable to read thai characters from .properties resource file in java
我有一個具有泰國字符的資源文件(.properties文件)。
當我使用下面的代碼讀取該文件時,它顯示像“?”這樣的垃圾字符
package RD1.Common;
import java.util.Enumeration;
import java.util.Locale;
import java.util.ResourceBundle;
public class LabelManagerRD {
public static String[] getLabel(String ParamString1)
{
String NextEle = "";
String str2 = ParamString1;
int i = 1;
String Final[] = new String[1000];
ResourceBundle bundle =
ResourceBundle.getBundle("rd", Locale.US);
Enumeration<String> enumeration = bundle.getKeys();
while (enumeration.hasMoreElements())
{
NextEle = enumeration.nextElement();
if (NextEle.toLowerCase().contains(str2.toLowerCase()))
{
Final[i] = NextEle+"="+bundle.getString(NextEle);
i++;
}
}
return Final;
}
public static void main(String[] args)
{
try
{
String TestValue[] = getLabel("RD.RDRAPCEX");
for(int i=1;i<=TestValue.length;i++)
{
if (!(TestValue[i].length()==0))
{
System.out.println(i+" - "+TestValue[i]);
}
}
}
catch (Exception e)
{
}
}
}
屬性文件(rd_en_US.properties)如下所示
BL_BLNG_GROUP.BL_BLNG_GRP.BLNG_GRP_ID.IP=รสสรืเ เพนีย รก~^PAGE_1~^Y~^N
BL_BLNG_GROUP.BL_BLNG_GRP.LONG_DESC.IP=Long Desc~^PAGE_1~^Y~^N
BL_BLNG_GROUP.BL_BLNG_GRP.SHORT_DESC.IP=Short Desc~^PAGE_1~^Y~^N
BL_BLNG_GROUP.BL_BLNG_GRP.DETAIL_DESC.IP=Explanatory Note~^PAGE_1~^Y~^N
請建議如何繼續這樣做。
謝謝,桑迪
如果您的文件編碼是正確的,那么您必須注意System.out
將無法使用默認控制台設置打印UTF-8字符。 確保用於顯示輸出的控制台也以UTF-8編碼。
例如,在Eclipse中,您需要轉到Run Configuration> Common來執行此操作。
屬性文件通常以ISO 8859-1編碼解釋。 如果您需要此集合中未包含的其他字符,請使用unicode轉義\\uxxxx
例如\\uxxxx
。 還有一些工具可用於將具有不同編碼的屬性文件轉換為此文件(請參閱native2ascii
)。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.