Chrisの梳羽之礁

A look of quick intelligence and soft refinement
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

[转] Android xliff和字符串资源

Posted on 2011-10-19 15:27  Chrisfang6  阅读(1743)  评论(0编辑  收藏  举报

原文

很多Android开发者可能会发现部分资源字符串在/res/values/string.xml中包含有类似xliff的节点,Xliff是XML Localization Interchange File Format 的缩写,中文名为XML本地化数据交换格式,对于在Android的资源字符串中,可能会有类似下面的 <xliff:g id="cwj">%1$s</xliff:g> 这里,id我们可以随便定义,后面的%1$s有点像C#中的字符串格式化标志,这里1%表示这是第一个可替换量,如果一个String中有多个需要替换的变量,可以为

  

1 <string name="info">开发者<xliff:g id="name">%1$s</xliff:g> 来自 <xliff:g id="company">%2$s</xliff:g> 公司</string>

 

  对于上面的字符串,在工程中我们可以使用String strInfo=getResources().getString(R.string.info,"cwj","android123"); 来拼接,返回一个新的字符串strInfo中。

 

%n$ms:代表输出的是字符串,n代表是第几个参数,设置m的值可以在输出之前放置空格 

%n$md:代表输出的是整数,n代表是第几个参数,设置m的值可以在输出之前放置空格,也可以设为0m,在输出之前放置m个0 

%n$mf:代表输出的是浮点数,n代表是第几个参数,设置m的值可以控制小数位数,如m=2.2时,输出格式为00.00