DateFormat到列表视图中的小时和分钟

时间:2015-07-30 10:58:21

标签: java android calendar

我有点在我正在建设的项目上遇到一些困难。为了帮助您理解我有以下屏幕截图。

Join Opened League

我通过网络服务检索联盟的名字和日期。这个日期代表了联赛开始的时间。因此,A联赛于次日11:00:50开始。

以下是我检索这些对象的方法。

try {
                        if (response.getString("status").equals("success")) {
                            //getTeam(username, password);

                      JSONArray jsonArray = response.getJSONArray("leagues");

                      for (int i = 0; i < jsonArray.length(); i++) {
                                showOpenLeagues = new   ShowOpenLeagues();

 JSONObject jsonObject1 = jsonArray.getJSONObject(i);
                                showOpenLeagues.setLeagueName(jsonObject1.getString("league_name"));
                                showOpenLeagues.setLeagueStart(jsonObject1.getString("league_start"));
                                showOpenLeagues.setLeagueId(jsonObject1.getString("ID"));
                                showOpenLeaguesList.add(showOpenLeagues);



                                listView.setAdapter(openLeaguesAdapter);


                            }

                        }

                    } catch (JSONException e) {
                        Log.e("TAG", e.toString());
                    }

只需解析json数组。

现在这是我的问题。我想找到一种方法来获取所有这些日期格式,并将它们转换为小时和分钟,而无需点击任何行!我做了类似的事情,但我在单个textview中显示了计时器(使用CountDownTimer类及其重写的方法),这更容易。

谢谢。

1 个答案:

答案 0 :(得分:1)

您可以使用SimpleDateFormat格式化日期。

当您以格式

获取日期时
yyyy-MM-dd HH:mm:ss

并且您希望它格式化

HH:mm

这样做:

SimpleDateFormat df_input = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss", java.util.Locale.getDefault());
SimpleDateFormat df_output = new SimpleDateFormat("HH:mm", java.util.Locale.getDefault());

try {
  Date parsed = df_input.parse(inputDate);
  String  outputDate = df_output.format(parsed);
} catch (Exception e) { 
}

现在你有一个字符串=&gt; outputDate只包含小时和分钟。 可以有许多种组合,即

"yyyy-MM-dd",
"yyyy-MM-dd HH:mm",
"yyyy-MM-dd HH:mmZ",
"yyyy-MM-dd HH:mm:ss.SSSZ",
"yyyy-MM-dd'T'HH:mm:ss.SSSZ",