@NonNull
    public static SpannableStringBuilder formatCacheInfoLong(final Geocache cache, final @Nullable List<AbstractList> storedLists, final @Nullable String excludeList) {
        final SpannableStringBuilder sb = new SpannableStringBuilder();

        final ArrayList<SpannableString> infos = new ArrayList<>();
        addConfiguredInfoItems(cache, Settings.getInfoItems(R.string.pref_cacheListInfo, 2), storedLists, excludeList, infos);
        boolean newlineRequested = false;
        for (SpannableString s : infos) {
            if (s.length() > 0) {
                if (StringUtils.equals(s, "\n")) {
                    if (sb.length() > 0) {
                        newlineRequested = true;
                    }
                } else {
                    sb.append(sb.length() > 0 ? newlineRequested ? "\n" : SEPARATOR : "").append(s);
                    newlineRequested = false;
                }
            }
        }
        return sb;
    }
Generate a numeric date and time string according to system-wide settings (locale,
date format) such as "7 september at 12:35".

@param date milliseconds since the epoch
@return the formatted string
main/src/main/java/cgeo/geocaching/utils/Formatter.java