一.虽然jdk提供了国际化属性文件的工具,而且eclipse也有编辑属性文件的插件来让我们方便的时候。但自己还是情不自禁的想自己写一个,或者说是描述怎样实现的原理。可以参考如下代码。
package test;
public class Test {
public static void main(String[] args) throws Exception {
try {
String m = new String("中文测试");
System.out.println(m);
char[] c = m.toCharArray();
for (int i = 0; i < c.length; i++)
System.out.println(Integer.toHexString((int) c[i]));
} catch (Exception e) {
System.out.println(e.toString());
}
}
}
运行上面的程序, 你会得到如下结果
中文测试
4e2d
6587
6d4b
8bd5
那么属性文件中,“中文测试”的国际化unicode应该是什么样子呢,如下
\u4e2d\u6587\u6d4b\u8bd5
可见,转换其实很简单,就是把字符数组的每个元素转换成16进制的字符串,然后在前卖弄加上字符前缀“\u”就可以了。
二.好了, 现在知道属性文件中unicode表现形式。那么,个浏览器也是支持unicode的。
但是我们会很奇怪的发现,怎么同样的字,在属性文件中和在网页中不是一样的呢。现在我也先不求甚解一下。不过要告诉大家的是两者其实是一致的。如下把汉字 张 转换成在网页中可以显示的unicode编码
String s = "&#" + (int)'张' + ";";
s的实际值将会是 “张”
我想通过表现转换表达式也应该看出来的,网页的和属性文件的不同点在于前缀不同,而且多加了一个后缀";"。而核心仍然是unicode位置,只不过这里直接用的十进制而已。
好的,介绍完收工了。
分享到:
相关推荐
文件的国际化字符串中使用OGNL,格式为${表达式},例如: validation.required=${getText(fileName)} is required 2. 使用java.text.MessageFormat中的字符串格式,格式为{ 参数序号(从0开始), 格式类形(number |...
它还缺乏对国际化字段进行有用的查找,搜索和索引的能力。 如果其中一项对您很重要,则该项目不适合您,请选择我们上面链接的一项。 但是,如果这些限制对您来说很好,那么这将为您提供一个非常轻便,易于使用和...
这是 RFC 3454 - 国际化字符串准备(“stringprep”)的 PHP 实现。 请参阅: : 要求 PHP >= 5.3 PHP国际扩展( ) PHP iconv 扩展 ( ) 例子 <?php require "vendor/autoload.php" ; use Znerol \ ...
详情见我博客https://blog.csdn.net/zhifanxu/article/details/81537468
用于创建国际化模板字符串的工具。 它接收一个包含 i18n 占位符的模板字符串,并用适当的翻译字符串替换它们。 例如: 重要提示:默认情况下,我们使用 dot 模板处理器。 但是template-i18n还支持ejs 、 underscore...
优点: 1. 提供了便捷的方法进行字符串大小写转换,简化代码,提高复用性。 2. 对null值进行了处理,避免了运行时异常。 缺点: ...在处理国际化字符串时需要注意Unicode字符集下的大小写转换规则。
1.4.5 格式化字符串 21 1.5 字符串用法 22 1.5.1 构建字符串 22 1.5.2 分析字符串 24 1.6 国际化 25 1.7 小结 27 第2章 String类和StringBuilder类 28 2.1 学习本章要用到的工具 28 2.2 文本结构 29 2.3 String类 30...
本文先简要介绍在ASP.NET Core 2.0里实施全球化和本地化,默认的本地化从资源文件(resx)里读取本地化字符串。本文然后提供一个简单示例,说明如何自定义本地化,以便从文本文件读取本地化字符串。 实施全球化和...
前段页面的国际化,运用jquery-i18next js做国际化处理,i18n实现前端国际化,页面的多语言切换,本例切换了中英文,运用cookie存取使得刷新页面仍然保持当前语言 1、通过请求不同的语言文件,达到国际化前端的效果...
一段代码,多端生成国际化字符串工具类,加强版,适配多种场景
一段代码,多端生成国际化字符串工具类,加强版,适配多种场景
用VC纯资源DLL解决国际化问题_多国语言版.zip
软件测试 本地化与国际化 策略 方法 L10N I18N
一键将网站静态资源HTML和JS中的英文字符串翻译为中文 使用命令:trans.sh -u jabari -a 123 -s ./test -d ./dist -u: 用户名 -a: 密码 -s: 源目录 -d: 生成目录
该模块实现了PRECIS框架,如以下所述: PRECIS框架:应用协议中国际化字符串的准备,执行和比较( ) 表示用户名和密码的国际化字符串的准备,执行和比较( ) 代表昵称的国际化字符串的准备,执行和比较( ) 需要...
该项目已被移动。 有关此方面的新工作,请查看appengine-i18n-sample-python 一... webapp2_extras.i18n不介绍如何在Javascript代码中国际化字符串。 另外,它取决于babel和pytz,这意味着您需要在代码中部署babel和py
DataTables等JS插件的使用* 国际化字符串* ……在线演示地址======https://nutzwk.nutz.cn/ NutzWk 2.0https://wzflow.nutz.cn/ NutzWk 1.0 (含Activiti工作流)======NutzWk 1.0 源码是这个链接: ...
它是一个eclipse插件,用于定位需要转换以进行Java软件国际化(i18n)和进一步本地化(L10n)的常量字符串。 开发人员可以使用该工具快速制定国际化版本,也可以检查是否忘记将i18ned版本中的某些常量字符串外部化...
在WPF中界面国际化很容易实现,但是数据国际化确实是一个难题。为了解决项目中的需求,我设计了解决方案。 思路: 1.在数据库中,需要国际化的字段存放国际化key值;...4.通过key值获取对应的字符串。
iOS国际化demo,包括字符串、应用名称、图片、界面文件国际化。