首页 > 解决方案 > 如何更改列表的日期格式

问题描述

我有一个列表,当我打印/显示它的内容时,我会得到特定格式的日期。假设我想以不同的格式获取它们,我如何选择我希望打印列表的格式?

public List<Date> TimeHistory = new ArrayList<Date>();
ArrayAdapter<Date> adapter = new ArrayAdapter<Date>(getActivity(), R.layout.listview_timehistory, R.id.tvTime,TimeHistory);

例如,这段代码给了我想要的列表,但我想以不同的格式获取它。

顺便说一句,当我将项目添加到列表中时,我将 simpleDateFormat 与我想要的格式一起使用。但是当列表视图中显示的项目时,它们似乎不使用这种格式。

if(Info.get("TIME")!=null)
                    {
                        SimpleDateFormat  format = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
                        try {
                            Date date = format.parse(Info.get("TIME"));
                            message.TimeHistory.add(date);
                        }
                        catch (Exception e){

                        }
                    }

标签: javadatearraylistformatandroid-arrayadapter

解决方案


如果您执行类似的操作,System.out.println(TimeHistory)或者您在调试时“仅”查看日期,则会调用java.util.DatestoString()方法。System.out.println(TimeHistory)调用java.util.AbstractCollectionstoString()方法,它执行对每个项目toString()方法的调用。

如果你想改变这种行为,你应该扩展java.util.Date并覆盖toString()-method


推荐阅读