0

我构建了一个简单的程序(带有 10 条诫命的数组字符串),稍后我创建了另一个类(选择其他活动的索引)。

我想通过保存的首选项保存此数组,以便重新启动应用程序时的用户可以从最后一点继续。

我读到 putStringSet 只能从 api 11 获得,而我也会保持兼容 2.3 版

有没有办法保存数组字符串?

谢谢!

4

1 回答 1

2

我会使用 for 循环将字符串数组转换为常规字符串并使用分隔符,例如“|” 并使用 putString 保存。取回它时,我会使用相同的分隔符拆分字符串并重建数组。

private String GetString(String[] array, String delimiter)
{
    StringBuilder sb = new StringBuilder();
    for(String s : array)
    {
        if(sb.length() > 0) { sb.append(delimiter);}
        sb.append(s);
    }

    return sb.toString();
}

private String[] GetArray(String input, String delimiter)
{
    return input.split(delimiter);
}

使用 GetArray 时要小心,因为 String.split() 假定正则表达式作为分隔符,所以如果您使用字符“|” 你必须逃避它,例如。GetArray(myArray, "\\|"); 希望这可以帮助。

于 2012-11-28T14:09:23.787 回答