我在数据库中有一个字符串,其中包含以下内容:
String fromdatabase = "one,two,three,four";
基本上我想把它变成以下格式以便进一步处理和使用:
String[] array = new String[]{R.string.one,R.string.two,R.string.three,R.string.four};
到目前为止,我有以下代码将字符串转换为字符串数组,但不知道如何从那里开始。我正在考虑使用某种形式的for循环
getResources().getIdentifier(???,"string","package"));
然后在最后将它放入一个新的字符串数组中,但我不知道从哪里开始。
String[] split_fromdatabase = fromdatabase.split("\\s*,\\s*");
由于
答案 0 :(得分:0)
经过一个小时的试用后出现错误,此代码似乎有效。 它可能不是最好的书面,但它有效:
String[] split_fromdatabase = dropped_by.split(",");
a = new ArrayList<String>();
for(int i1=0; i1 <Adropped_by.length; i1++){
System.out.print(Adropped_by[i1]);
int res = getResources().getIdentifier(split_fromdatabase [i1],"string",getPackageName());
a.add(getString(res));
}
db = new Object[a.size()];
db = a.toArray(db);
答案 1 :(得分:-1)
R.string.one表示您指向“&#39; res”中的字符串。文件夹中。
您无法在运行时在res文件夹中创建字符串(或任何内容)。