Search code examples
androidandroid-roomandroid-architecture-components

Room - Array of String TypeConverter


Does anyone has type converter for Array type to be stored in Room database as comma separated list of strings?

Thx for help


Solution

  • Something like this should work

     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;
        }
    }