
jQueryi18nproperties 是一款轻量级的 jQuery 国际化插件。与 Java 里的资源文件类似,jQueryi18nproperties 采用 properties 文件对 JavaScript 进行国际化。jQueryi18nproperties 插件根据用户指定的(或浏览器提供的 )语言和国家编码(符合 ISO-639 和 ISO-3166 标准)来解析对应的以“properties”为后缀的资源文件。
利用资源文件实现国际化是一种比较流行的方式,例如 Android 应用就可以采用以语言和国家编码命名的资源文件来实现国际化。jQueryi18nproperties 插件中的资源文
如果发生ResourceBundlegetBundle("myresource") 读取不到资源文件时,需要注意下面问题
1,java project
仅仅需要把myresourceproperties文件放在src下,如果是放在package下,则程序的filename应该package/myresource
2,j2ee的web project
1,myresourceproperties要放在WEB-INF的classes下,
2,如果是使用jar来执行读取资源文件时,该jar需要添加在lib下面,不仅仅是由IED(eclipse)配置的classpath
解释:getBundle加载资源文件时,会读取当前应用的classLoader,遍历当前的classloader找出classpath,进行资源文件的绑定,如果找不到则会报出
javautilMissingResourceException。
关键在于,如果使用eclipse配置应用,而且是将lib托管给elipse去加载,那么eclipse中启动tomcat时,应用的加载lib下的classloader和tomcat读取应用后加载的class就不会是同一个。
tomcat启动时,根据tomcat配置的jre,加载应用。而且应用的lib托管给eclipse,由elipse设定的jre加载lib下的jar。此时就会有2个jre环境。
解决方法是:把所有jar放到WEB-INF的lib下,由容器自己加载。当然也要在此加载到classpath下,项目编译需要。
那个属性文件也要加上路径的。于是又开始新征程。这样为了配活,再来。
static ResourceBundle rb = ResourceBundlegetBundle(ReadSourceclassgetPackage()toString()substring(8)+"info");
这样就解决了路径问题,只要属性文件和读取文件在一起就可以了。
java资源文件里中文字符需要转换为unicode字符,用native2ascii太麻烦,下面是我用的一个小工具,把它保存为html格式文件,在输入框里面输入中文,点击转换后就可以把中文转换为unicode字符了
<html>
<head>
<title>GB2312 TO Unicode</title>
<div align=center >
<center>
<table border=0 cellpadding=0 cellspacing=0 style="border-collapse: collapse" width=600 id=AutoNumber1 height=26>
<tr>
<td width=100% height=26 bgcolor="#EDF9FE">
<p align=center><font face=黑体 size=5 color=#FF0000><b>Unicode 转换工具</b></font></p>
<p>在下面的文本框中,输入中文文字</p>
<p> 按“转换”,即可将其转化为unicode字符。</p>
<p> 再按“还原”,即可将其还原为简体中文。</p>
</tr>
</table>
</center>
</div>
<p align=center>
<textarea cols=82 rows=15 id=code>
</textarea></p>
<p align=center>
<input type=button onclick=encode(code,this) value=转化成Unicode字符>
<script>
var mode="zhuan";
function encode(obj,btn){
if(mode=="zhuan"){
objvalue=objvaluereplace("\'","ch39")
objvalue=objvaluereplace(/[^\u0000-\u00FF]/g,function($0){return escape($0)replace(/(%u)(\w{4})/gi,"\\u$2")});
btnvalue="还原为简体中文";
mode="huan";
}else{
objvalue=unescape(objvaluereplace(/\\u/g,'%u'));
btnvalue="转化成Unicode字符";
mode="zhuan";
}
}
</script></p>
</head>
<input type="checkbox" onclick="return false" checked readonly >
</html>
<jsp:include page="/common/pagejsp" flush="true"></jsp:include>
以上就是关于怎么在js中读取properties配置文件中的数据全部的内容,包括:怎么在js中读取properties配置文件中的数据、java获取properties文件时的Can't find bundle for base name问题、java 资源文件中如何配置中文等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)