JAVA中时间格式转换问题

在后台获得从前台传过来的参数为String类型TueJan100:00:00UTC08002013这样的格式要怎么转换成2013-01-01的格式啊。。。部分代码:Str... 在后台获得从前台传过来的参数为String类型 Tue Jan 1 00:00:00 UTC 0800 2013
这样的格式要怎么转换成2013-01-01的格式啊。。。
部分代码:
String str = "Tue Jan 1 00:00:00 UTC 0800 2013";
SimpleDateFormat s= new java.text.SimpleDateFormat("yyyy-MM-dd"); String a = s.format(str); System.out.println(a);
上面的代码执行会报错 java.lang.IllegalArgumentException: Cannot format given Object as a Date
可是如果将str改成new java.util.Date() ,代码就会正确执行,请问这是怎么回事啊,要怎样才可以转换成2013-01-01格式的啊。。。
已经解决好了,谢谢各位的解答。。。。
展开
 我来答
不会横走的螃蟹
2013-12-20 · TA获得超过954个赞
知道小有建树答主
回答量:373
采纳率:0%
帮助的人:442万
展开全部

s.format接收的是date格式的参数,先把字符串转成日期就可以啊(你那个时间字符串是不是不对啊,最后面那个0800是哪来的?我这个可以运行的)

public static void main(String[] args)
    {
        SimpleDateFormat s = new SimpleDateFormat("yyyy-MM-dd");
        
        Date date = new Date("Tue Jan 1 00:00:00 UTC 2013");
        
        String a = s.format(date);
        
        System.out.println(a);
    }
幽冥神者
2013-12-20 · TA获得超过3213个赞
知道大有可为答主
回答量:1953
采纳率:50%
帮助的人:1772万
展开全部
SimpleDateFormat的format方法接收一个Date类型的参数,你往里面传字符串肯定是不行了。
你先把你那一堆字符串转成Date。但是令人费解的是你那堆表示日期的字符串是从哪儿来的?
追问
要怎么样才能转换成Date类型的。那个字符串是从前台传到后台的啊
String start=request.getParameter("begin");输出来start就等于 Tue Jan 1 00:00:00 UTC 0800 2013
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
善德明3B
2013-12-20
知道答主
回答量:5
采纳率:0%
帮助的人:3.1万
展开全部
SimpleDate()Format sdf = new SimpleDate()Format("yyyy-MM-dd ");Date date = sdf.parse(str);String s=sdf.format(date)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wasdxie
2013-12-20 · 超过12用户采纳过TA的回答
知道答主
回答量:57
采纳率:0%
帮助的人:32.5万
展开全部
好好去看看JAVA api把。你程序写的不对
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-12-20
展开全部
String a = s.format(str); 这个str要是date类型的,不能是string类型的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
智泓孙
2013-12-20
知道答主
回答量:13
采纳率:0%
帮助的人:4.2万
展开全部
Date date = new Date("Tue Jan 1 00:00:00 UTC 0800 2013");
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式