Android:使用变量名称加载PropertyResourceBundle

时间:2015-04-20 08:56:22

标签: java android properties

我正在尝试将“.properties”文件加载到PropertyResourceBundle对象

使用此代码,但我必须加载许多不同的组合。

static ResourceBundle res[] = {null, null, null};
res[i] = new PropertyResourceBundle(getResources().openRawResource(R.raw.respaul_de));

这些文件位于我的android项目的res / raw /目录中。 有人知道这样做的解决方案......

res[i] = new PropertyResourceBundle(getResources().openRawResource("R.raw." + <nameArray> + <languageArray>));
我已经尝试过了......但它没有用。因为我的ID总是为“0”。

int resID = getResources().getIdentifier("respaul_de", "id", getPackageName());
res[i] = new PropertyResourceBundle(getResources().openRawResource(resID));

如果有人可以帮助我,我会很高兴。

修改

解决方案:

String n = resourceNames[i / 3].toLowerCase() + "_" + (lang[i % 3].toString()).toLowerCase();
        int is = getResources().getIdentifier(n, "raw", getPackageName());
        res[i] = new PropertyResourceBundle(getResources().openRawResource(is));

解决:

int is = getResources().getIdentifier("respaul_en", "raw", getPackageName());

0 个答案:

没有答案