1$s // String
%1$d // int

//R.string.old:
<string name="old">我今年%1$d岁了</string>

String sAgeFormat = getResources().getString(R.string.old);
String sFinalAge = String.format(sAgeFormat, 23);


1、整型,比如“我今年23岁了”,这个23是整型的。在string.xml中可以这样写,<string name="old">我今年%1$d岁了</string> 在程序中,使用
  1. StringsAgeFormat=getResources().getString(R.string.old);
  2. StringsFinalAge=String.format(sAgeFormat,23);
将%1$d替换为23; %1$d表达的意思是整个name=”old”中,第一个整型的替代。如果一个name中有两个需要替换的整型内容,则第二个写为:%2$d,以此类推;具体程序中替换见下面的string型;
2、string型,比如“我的名字叫李四,我来自首都北京”;这里的“李四”和“首都北京”都需要替换。 在string.xml中可以这样写,<string name="alert">我的名字叫%1$s,我来自%2$s</string> 在程序中:
  1. StringsAgeFormatStringsAgeFormat1=getResources().getString(R.string.alert);
  2. StringsFinal1=String.format(sAgeFormat1,"李四","首都北京");
这里两个string需要替换的,按照上面程序的顺序依次对应。

<xliff:g>标签介绍:
属性id可以随便命名
属性值举例说明
%n$ms:代表输出的是字符串,n代表是第几个参数,设置m的值可以在输出之前放置空格
%n$md:代表输出的是整数,n代表是第几个参数,设置m的值可以在输出之前放置空格,也可以设为0m,在输出之前放置m个0
%n$mf:代表输出的是浮点数,n代表是第几个参数,设置m的值可以控制小数位数,如m=2.2时,输出格式为00.00

也可简单写成:

%d (表示整数)

%f (表示浮点数)

%s (表示字符串)

使用步骤举例:

1.

<?xml version="1.0" encoding="utf-8"?>

<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">

2.

<string name="test_xliff">小红今年<xliff:g id="xxx">%d</xliff:g>岁了,上<xliff:g id="yyy">%s</xliff:g>年级!</string>

3.

String test = String.format(getResources().getString(R.string.test_xliff), 7, "小学二");

输出:

小红今年7岁了,上小学二年级!

更多相关文章

  1. android单元测试用例和日志输出
  2. Ubuntu 13.04 编译环境配置及android 2.3 源代码编译时出现了以
  3. android学习日志六
  4. Android(安卓)Button 点击时替换背景颜色和替换当前图标
  5. Android小知识积累
  6. Android(安卓)学习 设备管理器勾选后不能再取消了
  7. Android(安卓)5.0 API 的变化——开发人员注意
  8. Android(安卓)Studio中使用NDK
  9. android 自定义控件(邮箱边写边出格式邮箱)

随机推荐

  1. Android(安卓)打包aar给unity3d使用 项目
  2. Android(安卓)实现微信,QQ文件在其他应用
  3. Android开发环境——连接驱动ADB相关内容
  4. [转]Android(安卓)Launcher 分析
  5. Android之Dialog详解(二):自定义对话框
  6. android音乐播放器例子及其源码分析
  7. Android中保存和恢复Fragment状态的最好
  8. android学习摘记——TabHost使用代码
  9. android adb shell 修改权限
  10. Android(安卓)开发之RecyclerView的使用