首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SimpleDateFormat和parseException

SimpleDateFormat和parseException
EN

Stack Overflow用户
提问于 2014-05-27 10:26:24
回答 4查看 90关注 0票数 0

我正在将一个Web应用程序开发到GWT中,并使用对象DatePicker。此对象以已定义的格式检索日期,我正在将该格式转换为字符串,例如:

代码语言:javascript
复制
Wed May 14 2014 00:00

对于我来说,使用这个日期作为字符串对某些操作是有用的。然而,对于其中之一,我需要时间戳对象。因此,我以以下方式使用SimpleDateFormat对象:

代码语言:javascript
复制
SimpleDateFormat sdf = new SimpleDateFormat("E MMM dd yyyy HH:mm");
Timestamp tDateIni = new Timestamp(sdf.parse(sDateIni).getTime());

然而,当我运行远程调试时,我会得到一个ParseException。你知道这个错误会是什么吗?我想我在使用"E“部分中的SimpleDateFormat对象的格式很糟糕,但我不确定。提前谢谢!

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-05-29 12:06:26

我已经在SimpleDateFormat对象中添加了Locale对象,现在它可以工作了。感谢您的帮助和评论!

票数 0
EN

Stack Overflow用户

发布于 2014-05-27 10:38:51

如果您想在GWT中的客户端解析日期,那么尝试使用DateTimeFormat

代码语言:javascript
复制
DateTimeFormat dateTimeFormat=DateTimeFormat.getFormat("E MMM dd yyyy HH:mm");
Date date=dateTimeFormat.parse("Wed May 14 2014 00:00");

如果要在服务器端解析日期,则以毫秒为单位从客户端传递时间为长值,而不是日期字符串,并使用new Date(timeInMills)在服务器端形成日期返回。

票数 1
EN

Stack Overflow用户

发布于 2014-05-27 10:32:09

把这个从

代码语言:javascript
复制
SimpleDateFormat sdf = new SimpleDateFormat("E MMM dd yyyy HH:mm");

代码语言:javascript
复制
SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd yyyy HH:mm");

应该是EEE而不是E来表示Wed这样的工作日。

在下面的代码中,完美工作(测试了)

代码语言:javascript
复制
public static void main(String[] args) {
        String s = "Wed May 14 2014 00:00";
        SimpleDateFormat sdf = new SimpleDateFormat("EEE MMM dd yyyy HH:mm");
        try {
            Timestamp tDateIni = new Timestamp(sdf.parse(s).getTime());
            System.out.println(tDateIni.getTime());
        } catch (ParseException ex) {
            System.out.println("Parse Error");
        }
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23887023

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档