android获取具体时间项,解析string到date

来源:互联网 发布:网页英文翻译软件 编辑:程序博客网 时间:2024/05/04 06:32

android获取具体时间项,解析String到Date. SharedPreference存储ArrayList

获取具体各个时间项

Calendar calendar = Calendar.getInstance();calendar.setTime(date);// 获取小时// int hour = calendar.get(Calendar.HOUR_OF_DAY);int hour = calendar.get(Calendar.HOUR);// 获取分钟int minute = calendar.get(Calendar.MINUTE);

解析String到Date

  • 注意通配符 T Z 的写法
  • 注意try-catch的处理,有待优化
public static String DATE_PATTERN = "yyyy-MM-dd'T'HH:mm:ss'Z'";public static String DATE_PATTERN2 = "yyyy-MM-dd HH:mm:ss";SimpleDateFormat format = new SimpleDateFormat(Constant.DATE_PATTERN);        Date returneDate = null;        try {            returneDate = format.parse(dateString);        } catch (ParseException e) {            format = new SimpleDateFormat(Constant.DATE_PATTERN2);            try {                returneDate = format.parse(dateString);            } catch (ParseException e1) {                e1.printStackTrace();            }        }

SharedPreference存储ArrayList

思路就是Set为中间的介质,首先初始化HashSet, 然后再使用addAll

Set<String> tagSet = new HashSet<String>();        tagSet.addAll(toTagNames(person.tagList));
person.tagList = toTags(mSharedPreferences.getStringSet(Person.jSON_TAGS, new HashSet<String>()));
public ArrayList<String> toTagNames(ArrayList<TagBean> tags){        ArrayList<String> tagNames = new ArrayList<String>();        for(int i = 0; i < tags.size(); i++){            tagNames.add(tags.get(i).name);        }        return tagNames;    }
    public ArrayList<TagBean> toTags(Set<String> tagStrings){        ArrayList<String> tagList = new ArrayList<String>();        tagList.addAll(tagStrings);        ArrayList<TagBean> tags = new ArrayList<TagBean>();        for(int i = 0; i < tagStrings.size(); i++){            tags.get(i).name = tagList.get(i);        }        return tags;    }
0 0