【问题标题】:Room - Array of String TypeConverterRoom - 字符串类型转换器数组
【发布时间】:2018-07-25 13:54:16
【问题描述】:

是否有人将 Array 类型的类型转换器作为逗号分隔的字符串列表存储在 Room 数据库中?

谢谢帮助

【问题讨论】:

    标签: android android-room android-architecture-components


    【解决方案1】:

    这样的东西应该可以工作

     public static class Converter {
    
        @TypeConverter
        public String fromArray(ArrayList<String> strings) {
            String string = "";
            for(String s : strings) string += (s + ",");
    
            return string;
        }
    
        @TypeConverter
        public ArrayList<String> toArray(String concatenatedStrings) {
            ArrayList<String> myStrings = new ArrayList<>();
    
            for(String s : concatenatedStrings.split(",") myStrings.append(s);
    
            return myStrings;
        }
    }
    

    【讨论】:

    • 是的,它有效我只需将其转换为 Kotlin,因为我没有写过我正在使用 Kotlin
    【解决方案2】:
    public class Converters {
        @TypeConverter
        public String get_string(List<String> str) {
            if (str == null)
                return null;
            StringBuilder pictures = new StringBuilder();
            for (String s : str) pictures.append(s).append(",");
            return pictures.toString();
        }
    
        @TypeConverter
        public List<String> set_string(String str) {
            if (str == null)
                return null;
            return new ArrayList<>(Arrays.asList(str.split(",")));
        }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-20
      • 1970-01-01
      • 1970-01-01
      • 2022-10-13
      • 2012-02-15
      • 2019-02-09
      • 2014-08-30
      • 2014-12-08
      相关资源
      最近更新 更多