【问题标题】:Android date remove GMT from DateTime [closed]Android 日期从 DateTime 中删除 GMT [关闭]
【发布时间】:2012-07-14 15:53:32
【问题描述】:

我需要从“2012-07-15 17:00 GMT”这样的字符串中删除“GMT”。 尝试使用此代码,但 testDate 返回 null。 有人可以帮忙吗?

谢谢

    String date = "2012-07-15 17:00 GMT";
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
        Date testDate = null;
        try {
            testDate = sdf.parse(date);
        }catch(Exception ex){
            ex.printStackTrace();
        }

【问题讨论】:

  • 解决了!!!对不起大家。我的代码中有“yyyy-MMM-dd HH:mm”。我的错。当我将代码更正为 MM 时工作正常。

标签: android datetime gmt


【解决方案1】:

这会有帮助吗?

String date = "2012-07-15 17:00 GMT";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm z");
Date testDate = null;
try {
    testDate = sdf.parse(date);
}catch(Exception ex){
    ex.printStackTrace();
}
System.out.println(testDate);

sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm");
date = sdf.format(testDate); 
System.out.println(date);

【讨论】:

  • 感谢您的帮助,但我的代码出现了一个简单的错误。对不起。
  • @filipe 我在上面的代码示例中提到了该错误并在您发表评论前 7 分钟进行了更正。 ;)
【解决方案2】:

既然你显然是从一个字符串开始的,为什么不直接切断最后四个字符,例如 String.substring()?

date = date.substring(0, date.length() - 4);

您还可以确认" GMT" 存在:

int index = date.indexOf(" GMT");
if(index > -1)
    date = date.substring(0, index);

如果您不更改日期的格式,则无需使用额外的 SimpleDateFormat 和 Date 类。

【讨论】:

  • 感谢您的帮助,但我的代码出现了一个简单的错误。对不起。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-12-18
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多